Ipad中的触摸滚动问题

Posted

技术标签:

【中文标题】Ipad中的触摸滚动问题【英文标题】:Touch scrolling issue in Ipad 【发布时间】:2014-11-21 11:25:13 【问题描述】:

我想停止在 ipad 中滚动整个文档,除了只允许滚动一个 div。

这是我的代码

$(document).bind('touchmove', function(e)
  e.preventDefault();           
);

//防止文档滚动

$('#disclaimer-box-inner').bind('touchmove', function(e)
  e.stopPropagation();
);

现在我有一个滚动条的 div 被命名为 disclaimer-box-inner。我想允许在这个 div 上滚动。

最终的结果是它停止了在屏幕上的滚动,但也停止了该 div 的滚动。

非常感谢任何帮助。提前致谢。

【问题讨论】:

我不太明白...是否还有其他元素也溢出了...?你能创建一个模拟演示吗..? 基本上我想删除 ipad 上的文档滚动,但允许滚动单个 div。 【参考方案1】:

用 css 代替 jquery 怎么样?

喜欢这个jsfiddle:

http://jsfiddle.net/3xdy0zyg/1/

献出你的身体

position: fixed;

给你的 div 加上 .scroll 类

overflow-y: scroll;
position: absolute;

现在你可以在 div 中滚动,但不能滚动 body。

【讨论】:

这是关于文档滚动的。在任何桌面浏览器中一切正常,但只有在 ipad 中我想删除滚动事件。 所以你只是想从 ipad 的那个 div 中删除滚动?

以上是关于Ipad中的触摸滚动问题的主要内容,如果未能解决你的问题,请参考以下文章

iPad上的Webkit溢出滚动触摸CSS错误

滚动 HTML <select> 列表时 iPad 未检测到触摸

触摸事件仅在iPad iOS 11.4上的Mobile Safari中滚动时触发“一次”

iPad使用触摸显示弹出框?

即使我不滚动,我也可以在 iPad 上显示滚动条吗?

如何在 iPad 上通过滚动使工作 jquery “滑动”?