zan*_*ona 9 javascript css webkit overflow ios5
我正在创建一个全屏的Web应用程序,它将有一些模块/小部件,它们利用新的iOS 5溢出:滚动功能.我想要的是在滚动html/body时禁用那个"弹性"效果(因为它是全屏)但是只对可滚动元素保持这种效果.
平滑我可滚动元素的效果:
html, body { overflow: hidden; }
.scrollable {
overflow: scroll;
-webkit-overflow-scrolling: touch;
}
Run Code Online (Sandbox Code Playgroud)
然后是以下禁用触摸滚动效果的脚本:
$(document).bind('touchmove', function (e) {
if (e.target === document.documentElement) {
e.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
虽然这似乎根本不起作用,因为当将元素滚动到最底端或顶部时,它也会滚动documentElement.
有没有办法只为身体html元素禁用该效果?
这是一个很好的例子,说明它如何影响功能:
事实证明,对我来说,唯一有效的解决方案是使用joelambert/ScrollFix脚本,效果非常好,没有任何延迟,事实上,我已经在我的一个项目中使用它了。
您还可以在他的博客文章中查看更多详细信息。对其他回复的用户感到抱歉,但我真的没有得到这些对我有用的答案。