請參閱this site上的代碼使用Javascript鼠標事件返回鼠標在HTML5畫布上的座標?
我想返回一個鼠標點擊/移動相對於html5畫布的相對座標。下面的代碼是什麼意思?
if (event.layerX || event.layerX == 0) { // Firefox
mouseX = event.layerX ;
mouseY = event.layerY;
} else if (event.offsetX || event.offsetX == 0) { // Opera
mouseX = event.offsetX;
mouseY = event.offsetY;
}
layerX適用於除Opera之外的所有瀏覽器。 OFFSETX適用於所有的瀏覽器Firefox的除外
那麼,我們的意思是,如果任一event.layerX OR event.layerY是0 ... 我的意思是event.layerX返回鼠標點擊w.r.t帆布的相對座標。那麼這是怎麼回事呢?
我不知道在我的代碼中是否有其他錯誤,但是在我正在構建的canvas應用程序中,它可以在iPhone上正常工作,但在iPad上,layerX和layerY將始終返回-3, - 3(因爲它從來沒有變化,所以從來沒有兩個點來定義一條線,所以不會出現任何繪圖)。我不得不使用'event.touches [0] .clientX'和'clientY'。 – 2012-01-18 03:09:30