javascript - 为什么 Chrome 会阻止我在网站上的滑动尝试?

标签 javascript jquery ipad google-chrome swipe

我正在着手开发一个针对 iPad 2 的移动网站,可以参见 here .

当您滑动红色背景时,它会在右侧显示蓝色背景,但会重置,因为没有选择任何内容。要选择内容,必须:(a) 将鼠标左键按住侧边栏图标之一(A 到 E),然后向左拖动超过 72 像素(任何少于 72 像素,它将重置,因为它可能已被重置)意外滑动);或 (b) 只需单击(或点击)侧边栏图标即可。

问题是,虽然 (b) 工作得很好,但 (a) 却不行。在Chrome中,经过短距离(可能等于最小滑动距离设置)后,它会显示“不允许”光标,并且释放鼠标左键后不会注册“mouseup”事件。您可以在 Chrome 中自行测试上面的链接。

有人能确定为什么会发生这种情况吗?相关JavaScript可见here .

最佳答案

当您在 Chrome 上拖动链接 ( <a href="..."> ) 时,需要一段时间(即鼠标必须移动一定距离)才能开始拖动。拖动开始后,您可以将 URL 拖动到其他位置(例如,拖动到选项卡条以在新选项卡中打开它),但它会阻止您通过脚本编写自行使用拖动功能。

解决办法是添加draggable="false"这样 Chrome 就不会表现出这种 native 拖动行为:

<a href="..." draggable="false">...</a>

关于javascript - 为什么 Chrome 会阻止我在网站上的滑动尝试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12960410/

相关文章:

javascript - 更改 :hover on iPad So First Touch is Registered as onclick and :hover Functionailty Still Works

javascript - 在影响音频的同时单击按钮时更改多张图像

javascript - 根据曲线/方程/公式修改滚动持续时间

javascript - 如何使用 jsonfile npm 在 javascript 中查找 JSON 文件的长度

javascript - Dialogue.Directive 不起作用 发出处理程序时?

jquery - ScrollTop 和 slideToggle 相互混淆

iphone - 在表格 View 中选择新行时如何取消选择选定的行?

javascript - 加载页面后 Asp.Net MVC JavaScript 不起作用

jquery 调用我的 helloworld Web 服务

ipad - 无法在 iOS 6 中处理方向?