【问题标题】:mousemove focus is lost when DOM modification is initiated on FF5在 FF5 上启动 DOM 修改时,mousemove 焦点丢失
【发布时间】:2011-07-13 16:34:32
【问题描述】:

演示:

http://anuary.com/dev/hp/pad3/

场景:

到达页面后,您会注意到手指跟随光标。单击任何视频,再次单击该视频。 (不要再单击任何内容;这应该会关闭视频)mousemove 不再响应,除非单击文档上的任何位置。

这是由以下行 (200) 引起的:

$.hp.ul.find('img').show();
$.hp.ul.find('li object, li div').remove();

将它们注释掉会使一切恢复正常。

在 OSX、FireFox 5 上发现错误。如果此错误未出现在您的操作系统/浏览器上,请报告。

有什么问题?如何解决这个问题?

更新:

这似乎是一件更严重的事情,可能是操作系统/浏览器错误。问题是当光标消失并且您试图离开浏览器窗口时,光标仍然不可见。 (除非你点击某处)

感谢任何解决方法。

【问题讨论】:

    标签: javascript jquery firefox firefox-5


    【解决方案1】:

    你可以试试:

    $(document).live('mousemove', function(e){      
            cursor.css({
                left:  e.clientX-tab.offset().left-60,
                top:   e.clientY-tab.offset().top+15
            });
        });
    

    虽然我无法在 FF5/Chrome (Win XP) 上重现这一点。视频不会停止(即使显示了图像,它也会在后台播放)。

    此外,您的实现会干扰 Flashblock 等插件,您可能需要考虑这一点。

    【讨论】:

    • 是的,你的网站在我的 Chrome/FF5 上运行良好(即使是旧的)。可能是 OSX/FF5 上的错误...
    • 先生,Flash没有干扰,因为用户点击的都是HTML。
    • 是的,但是如果您有 flashblock,则无法加载 flash。它将显示一个占位符图标,需要单击该图标以显示 flashblock 以允许该 flash。现在唯一的解决方法是转到Addons | Flashblock | Options | Add to whitelist manually
    • 我不确定这与我遇到的问题有什么关系。
    • 这是一个可用性建议,如果我的帖子不清楚,请见谅。
    猜你喜欢
    • 2015-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    • 2016-01-28
    • 1970-01-01
    相关资源
    最近更新 更多