html禁止页面滑动事件,在html5 canvas touchmove事件期间阻止滚动

如何在不阻止默认情况下阻止滚动,因为我仍然希望处理touchmove事件:

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);

当你说你想要它被处理时 – 它仍然可以.就像这样写:

$('#myCanvas')[0].addEventListener('touchmove',function(e) {

e.preventDefault();

brushMove();

},false);

我不保证单独使用preventDefault会停止滚动,但是如果你想要它来阻止默认设置并且你自己也使用自己的方法,那就是你写它的方式.你也可以把这个调用放在brushMove本身.

我只想说你可能需要在touchStart中执行preventDefault而不是touchMove. touchMove实际上可能为时已晚,因为如果它滚动可能没有touchMove事件!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值