禁用滚动网页iPad

时间:2013-03-19 23:27:34

标签: javascript jquery ipad

我见过许多涉及停止所有touchmove事件的解决方案。然而,这对我来说不起作用,因为我的应用程序涉及绘图画布。有没有办法确保用户无法滚动,同时保留其他touchevents? --Ashley

2 个答案:

答案 0 :(得分:1)

您可以在绘图处理程序中使用e.preventDefault(),也可以在DOM树中的附加处理程序中使用touchmove。这只是阻止了要滚动的$('body, html').on('touchmove', function(e){ e.preventDefault(); }); 的默认行为。

touchmove

您仍然可以在绘图画布上处理overflow:hidden个事件。

另一种选择是在CSS中设置{{1}} - 但这取决于您网页的大小。

答案 1 :(得分:0)

我认为你应该看看这个答案.. Prevent touchmove default on parent but not child

将画布放在容器中,然后停止在父级上滚动。

$('body').delegate('#fix','touchmove',function(e){

    e.preventDefault();

}).delegate('.scroll','touchmove',function(e){

    e.stopPropagation();

});