2015-12-11 47 views
1

我似乎無法弄清楚爲什麼我的代碼不會更新。我正在使用的瀏覽器沒有控制檯控件,也沒有其他瀏覽器可供使用,所以我不知道到底發生了什麼,除了我的所有腳本除了onMouseUpdate /事件監聽器行外都是如此。這裏是我的代碼:爲什麼我的腳本無法在鼠標點擊時更新?

HTML

<canvas id="game" width="500" height="500" style="border:1px solid #000000;position:absolute;top:10px;left:10%"> 

的JavaScript

var c = document.getElementById("game"); 
var ctx = c.getContext("2d"); 
var ballX; 
var ballY; 
var ballZ; 
var ballXVel; 
var ballYVel; 
var ballZVel; 
var mx=0; 
var my=0; 
var oldx; 
var oldy; 

document.addEventListener('onmousedown', onMouseUpdate, false); 

function onMouseUpdate(e) { 
    mx = e.pageX; 
    my = e.pageY; 
    renderWorld(); 
} 

function renderWorld(){ 
    ctx.fillStyle = "#3355FF"; 
    ctx.fillRect(0,0,500,380); 
    ctx.strokeRect(50,100,400,300); 
    ctx.fillStyle = "#00DD00"; 
    ctx.fillRect(0,380,500,120); 
} 

function renderBall(){ 
    ctx.beginPath(); 
    ctx.arc(ballX,ballY,ballZ,0,2*Math.PI); 
    ctx.fillStyle = "#FFFFFF"; 
    ctx.fill(); 
    ctx.stroke(); 
    ctx.closePath(); 
} 

function reset(){ 
    ballX=250; 
    ballY=380; 
    ballZ=40; 
    ballXVel=0; 
    ballYVel=0; 
    ballZVel=0; 
} 

function detectKick(){ 
    oldx=mx; 
    oldy=my; 

    loopDetectKick(); 
} 

function loopDetectKick(){ 
    if(oldx==mx&&oldy==my){ 

    setTimeout(loopDetectKick(),100); 

    } else{ 

    renderWorld(); 
    } 
} 

renderWorld(); 
reset(); 
renderBall(); 
detectKick(); 

回答

0

document.addEventListener('onmousedown', onMouseUpdate, false); 

只要切換到

document.addEventListener("mousedown", onMouseUpdate, false); 

我已經改變了onmousedownmousedown並取代了單引號用雙引號。

+0

謝謝,它的工作。 – BKFighter