2014-01-12 40 views
0

使用phpacademy繪畫應用教程,我試圖添加觸摸屏support.I具有相同的代碼鼠標和觸摸,但touchup和down不會觸發。javascript畫布touchstart和touchend不在觸摸屏上工作

canvas.addEventListener('mousedown', engage); 
canvas.addEventListener('mousemove', putPoint); 
canvas.addEventListener('touchstart', engage); 
canvas.addEventListener('touchmove', putPoint); 
canvas.addEventListener('mouseup', disengage); 
canvas.addEventListener('mouseout', disengage); 
canvas.addEventListener('touchend', disengage); 
+1

你能告訴我們你用於處理程序的代碼嗎?事件對象對於觸摸和鼠標事件看起來有點不同。你有沒有檢查與console.log,他們不觸發?您嘗試使用哪些瀏覽器(至少Safari支持使用畫布觸摸事件)? – K3N

+0

http; // joeybabcock.me/tests/php/5.php/在我發佈這篇文章之前的兩天,我從字面上開始使用javascript。我會嘗試使用Safari瀏覽器,而不是去回答 – joeybab3

回答

1

canvas元素不會收到touchstart事件(我知道)。爲了讓它起作用,你必須在畫布上進行絕對位置div的分解,並使用div來捕捉touchstart事件。

+0

因此,像整個頁面上的div一樣? – joeybab3

+0

我嘗試過,但即使在鉻合金和Safari瀏覽器中,它仍然不起作用。 – joeybab3

+0

你可以把你有什麼要點?在畫布上放置div是爲了在移動Safari中爲我工作。 –

相關問題