HTML
 Computer >> コンピューター >  >> プログラミング >> HTML

単純なonClickイベントハンドラーをHTML5キャンバス要素に追加するにはどうすればよいですか?


キャンバス要素に描画される要素には表現がありません。それらの唯一の表現は、それらが使用するピクセルとそれらの色です。キャンバス要素に描画するということは、即時モードでビットマップを描画することを意味します。キャンバス要素(図形)でクリックイベントを取得するには、キャンバスHTML要素でクリックイベントをキャプチャし、クリックされた要素を特定する必要があります。これには、要素の幅と高さを保存する必要があります。

クリックイベントをキャンバス要素に追加するには、以下のコードを使用します

canvas.addEventListener('click', function() { }, false);

クリックされた要素を特定するには、次のコードスニペットを使用します-

var e = document.getElementById('myCanvas'),
   elemLeft = e.offsetLeft,
   elemTop = e.offsetTop,
   context = e.getContext('2d'),
   elements = [];

// event listener for click event
e.addEventListener('click', function(event) {
   var xVal = event.pageX - elemLeft,
   yVal = event.pageY - elemTop;
   console.log(xVal, yVal);
   elements.forEach(function(ele) {
      if (yVal > ele.top && yVal < ele.top + ele.height && xVal > ele.left && xVal < ele.left + ele.width) {
         alert(‘element clicked');
      }
   });
}, false);
elements.push({
   colour: '#1C2128’,
   width: 250,
   height: 200,
   top: 30,
   left: 20
});
elements.forEach(function(ele) {
   context.fillStyle = element.colour;
   context.fillRect(ele.left, ele.top, ele.width, ele.height);
});

  1. HTML5キャンバスで画像を使用する方法は?

    HTML5 タグは、スクリプトを使用してグラフィックやアニメーションなどを描画するために使用されます。 HTML5で導入された新しいタグです。 HTML5キャンバスで画像を使用するには、drawImage()メソッドを使用します。このメソッドは、指定された画像をキャンバスに描画します。 次のコードを実行して、HTMLCanvasで画像を使用する方法を学ぶことができます。ここで、画像は画像またはキャンバスオブジェクトへの参照です。 xとyは、画像を配置するターゲットキャンバス上の座標を形成します。 例 <!DOCTYPE HTML> <html>  

  2. HTMLで要素の値を追加するにはどうすればよいですか?

    値を使用 HTMLの要素の値を追加する属性。次の要素で動作します-、、、、、、。 例 次のコードを実行して、 valueを実装してみてください。 属性- <!DOCTYPE html> <html>    <body>       <head>          <title>HTML value attribute</title>       </head>   &nbs