【问题标题】:Cursor doesn't target elements when scrolling with the mouse wheel / track pad in Safari在 Safari 中使用鼠标滚轮/触控板滚动时,光标不会定位元素
【发布时间】:2012-05-31 23:37:20
【问题描述】:

例子:

在 Chrome 和 Safari 中比较 Twitter.com 上的推文提要。当鼠标保持静止并使用触控板或鼠标滚轮滚动提要时,不会触发悬停状态。似乎光标仅在移动光标时针对 Safari 中的元素,而不是在滚动浏览器窗口时。这适用于 CSS 和 JQuery 悬停状态。

Ex.fm 已经能够解决这个问题。如果您在歌曲列表上使用静止光标滚动浏览器窗口,则会触发悬停状态。一定有办法破解这个 Safari 特定问题。

【问题讨论】:

    标签: google-chrome safari scroll hover target


    【解决方案1】:

    这个问题的答案可能会提示您如何继续。在 Firefox 中会发生什么?

    Safari iphone/ipad "mouse hover" on new link after prior one is replaced with javascript

    【讨论】:

      【解决方案2】:

      此问题已在最新版本的“Webkit Nightly”中得到修复。几乎可以肯定它会出现在 Safari 的下一个主要版本中。

      【讨论】:

        【解决方案3】:

        Safari 在使用触控板或滚轮滚动时不会检测鼠标位置(因此会触发悬停状态),除非您正在与之交互的对象位于可滚动的 div 内。您可以将整个内容提要嵌套在设置为 overflow:scroll;div 内,以允许在滚动时进行动态定位。然后 * 将您的 div 设置为填满整个屏幕,并提供 ** 滚动页面的外观,而实际上只在 div 内滚动。

        查看这个 JSFiddle 示例:http://jsfiddle.net/8Nkpr/26/

        Graham Hicks 的这个例子:http://jsfiddle.net/U7SGh/

        --

        *如果您正在执行任何依赖于使用 JQuery 检测滚动位置的动画或交互,这显然会成为一个问题。对不起,这个技巧没有视差。

        **这就是 ex.fm(如原始问题中所述)解决它的方式。

        ***感谢 Graham Hicks (@gmh) 为我们指明了正确的方向。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多