我有一个HTML5页面,它看起来像这样:
<html>
<head></head>
<body>
<canvas id="c1" width="500" height="500" />
</body>
</html>我使用Bootstrap3和Fabric.js作为画布库。当我在移动设备上运行它时,我遇到了一个问题,当我触摸画布上的对象并移动它时,页面也会被移动。似乎触摸事件也是由移动设备浏览器处理的。
我期望的是停止移动设备浏览器的默认事件处理,这样当我在canvas中触摸对象并移动它时,网页也不会移动。我怎样才能用Fabric.js做到这一点?
发布于 2014-01-05 08:49:18
我在制作html的时候改变了方式:
<meta name="viewport" content="width=device-width, initial-scale=0.5, user-scalable=no">然后,为了防止浏览器默认的缩放跳动,我们可以在文档中绑定“to”并禁用它。这是来自jQuery mobile,但不知何故,vmousemove =移动设备的触摸移动。
$(document).on("vmousemove", "body", function(e) {
e.stopPropagation();
e.preventDefault();
return false;
});这与Fabric.js无关,所以我不需要更改Fabric.js或其他东西。
https://stackoverflow.com/questions/20851814
复制相似问题