" "、" "、または " " の引数を取り、キャンバスに設定された新しいボタンを描画するdrawButtons
関数があり、引数に応じてボタンを異なる色で描画します。から呼び出すと機能しますが、から呼び出すと機能しません。は 1秒間に 80 回呼び出されるため、 draw() から呼び出したいと思います。そうすれば、マウスがボタンの上にあるかどうかをチェックし続け、適切なボタン セットを描画できます。nonhover
hover1
hover2
setUpGame()
draw()
draw()
setInterval()
setUpGame()
オブジェクトまたは関数の外で呼び出されます。関数またはオブジェクトの外にあるdraw()
によって呼び出されます。setInterval()
setInterval 呼び出しは、1 秒間に 80 回描画します。
getMouseOver()
draw()
「マウスがボタン1の上にある場合:drawButtons( "hover1")など」と表示されるため、実際に呼び出す必要がある別の関数です。呼び出すときにボタンを描画しません。
ブラウザの Javascript コンソールにエラーはありません。ゲームに最適な Chrome を使用しています。
drawButtons()
このことから、 から呼び出されたときに機能したため、問題はないと推測できsetUpGame()
ます。
draw()
そこから呼び出したときにasが機能しないという問題がある可能性がありますdrawButtons()
(ただし、さらに困惑させるために、そこから呼び出したときに displayNumbers が数字を表示します)。ゲーム、私たちはスタート画面にいます)。
getMouseOver()
それはどこでも機能しないため、おそらく問題があります。
とりあえずお見せgetMouseOver()
します。私のプログラムは大きくなっていて、最初からあまりにも多くを見せるのは圧倒されます。この関数は 1 秒間に 80 回呼び出される予定です。
getMouseOver: function() {
window.onload = (function(){
window.onmouseover = function(e) {
// IE doesn't always have e here
e = e || window.event;
// get event location
// change the code so that it gives the relative location
var location = {
x: e.pageX - offset.x,
y: e.pageY - offset.y
};
if (location.x > 103.5 && location.x < 265.5) {
if (location.y > 240 && location.y < 291) {
nonGameContent.drawButtons("hover1");
}
}
if (location.x > 103.5 && location.x < 265.5) {
if (location.y > 160 && location.y < 212) {
nonGameContent.drawButtons("hover2");
}
}
else{
nonGameContent.drawButtons("nonHover");
}
}
})},