私の JavaScript コードは実行されていませんが、キャンバスを描画する html は..... キャンバスの html 要素にイベント リスナーを追加しようとしています。要素をクリックするたびに、アラートが表示されるはずです。私はFirefoxとGoogle Chromeでこれを試しました。
<script language = "javascript" type = "text/javascript">
alert("yo");
canvas.addEventListener('click', function() {}, false);
var elem = document.getElementById("checkersq"),
elemLeft = elem.offsetLeft,
elemTop = elem.offsetTop,
context = elem.getContext('2d'),
elements = [];
elem.addEventListener('click', function(event){
var x = event.pageX - elemLeft,
y = event.pageY - elemTop;
elements.forEach(function(element){
if (y > element.top && y < element.top + element.height
&& x > element.left && x < element.left + element.width){
alert('clicked an element');
}
}
});
}, false);
elements.push({
colour: '#05EFFF',
width: 150,
height: 200,
top: 20,
left: 15
});
elements.forEach(function(element) {
context.fillStyle = element.colour;
context.fillRect(element.left, element.top, element.width, element.height);
});