1
我已經構建了一個接受桌面鼠標事件(筆平板電腦只使用鼠標事件)的jQuery html5畫布草圖應用程序。我還希望允許用iphone,ipad和andriod設備上的手指作爲移動web啓用應用程序進行繪圖。由於移動設備也會自行觸發鼠標點擊事件:這是否意味着我應該檢測瀏覽器類型,並用觸摸綁定替換所有鼠標綁定,以防止事件發生雙重觸發?如何防止觸摸和鼠標事件之間的雙觸發
這是一個愚蠢的例子:
<!DOCTYPE html>
<html>
<head>
<script src="jquery.min.js"></script>
</head>
<body>
<canvas id="myCanvas" width="1600px" height="1600px" style="border:1px dashed gray;background-color:white;">
</canvas>
<script>
function brushStart() {
$('#myCanvas').css('background-color','blue');
}
function brushEnd() {
$('#myCanvas').css('background-color','red');
}
function brushMove() {
$('#myCanvas').css('background-color','yellow');
}
$('#myCanvas').bind('mousedown', brushStart);
$('#myCanvas').bind('mouseup', brushEnd);
$('#myCanvas').bind('mousemove', brushMove);
$('#myCanvas')[0].addEventListener('touchstart',brushStart,false);
$('#myCanvas')[0].addEventListener('touchend',brushEnd,false);
$('#myCanvas')[0].addEventListener('touchmove',brushMove,false);
</script>
</body>
</html>