是否可以在ipad上选择带有iscroll的文本?

时间:2011-06-22 01:03:03

标签: javascript ipad iscroll4

我们正在使用iscroll来启用长div以在ipad上滚动。但是因为iscroll已经触发了触摸事件,用户无法再在div中选择文本。

有没有人知道是否有针对此的解决方法?

理论上,iscroll应该响应拖动而不是触摸,但实际上这似乎并没有发生。

其他人有这个问题吗?

3 个答案:

答案 0 :(得分:1)

实现iScroll时,示例文件的css规则通常为 身体标签上的-webkit-user-select:none;。如果您在决定拖动之前只是触摸并按住,此规则有助于不选择文本。删除该行(注释掉)以恢复文本选择功能。但是,这样,当用户与启用iScroll的区域进行交互时,文本选择器可能会出现在不合时宜的时刻。 干杯

答案 1 :(得分:1)

对于IScroll 5,请使用以下代码https://github.com/cubiq/iscroll/issues/439#issuecomment-53553645

要禁用鼠标单击 - 拖动滚动并仍然使用鼠标滚轮滚动,请使用此选项:

mouseWheel: true,
disableMouse: true

P.S。这也是一个很好的解决方案,无法在preventDefaultExceptions {{1}} {{1}}进行压力注入时突出显示IScroll中的文本<{3}}

答案 2 :(得分:0)

iscroll.js 文件中找到此行:

129(for me): onBeforeScrollStart: function (e) { e.preventDefault(); },

现在只需使用要允许文本选择的块的className。喜欢这个

onBeforeScrollStart: function (e) { if (!el.match("block")) e.preventDefault(); }

代理不会阻止默认行为,并允许用户选择文本。