【发布时间】:2012-04-10 23:33:38
【问题描述】:
我使用以下代码禁用桌面浏览器中的滚动,但它不适用于 iPhone 屏幕分辨率。
$("html").css("overflow", "hidden");
我还需要补充什么?
【问题讨论】:
标签: jquery iphone scroll smartphone
我使用以下代码禁用桌面浏览器中的滚动,但它不适用于 iPhone 屏幕分辨率。
$("html").css("overflow", "hidden");
我还需要补充什么?
【问题讨论】:
标签: jquery iphone scroll smartphone
//target the entire page, and listen for touch events
$('html, body').on('touchstart touchmove', function(e){
//prevent native touch activity like scrolling
e.preventDefault();
});
如果阻止触摸事件对您不起作用,您总是可以这样:
html, body{
max-width:100%;
max-height:100%;
overflow:hidden;
}
【讨论】:
我将提供一个不使用 jQuery 的片段,以便下一个“Javascripter”可以复制'n'paste:
var defaultPrevent=function(e){e.preventDefault();}
document.body.parentElement.addEventListener("touchstart", defaultPrevent);
document.body.parentElement.addEventListener("touchmove" , defaultPrevent);
document.body.addEventListener("touchstart", defaultPrevent);
document.body.addEventListener("touchmove" , defaultPrevent);
【讨论】:
defaultPreventDefault() 似乎不存在,但 preventDefault() 确实有效。