【问题标题】:Simple link hover & click event working in FF but not IE简单的链接悬停和单击事件在 FF 中工作,但在 IE 中不工作
【发布时间】:2014-11-19 18:19:37
【问题描述】:

请查看这个小提琴:http://jsfiddle.net/69c2hs0x/

当鼠标悬停在一个订单项上时,该行的右侧会出现一个“编辑”链接。在 Firefox 和 Chrome 中,点击 EDIT 链接成功触发一个警告框。

然而,在 Internet Explorer 中(此处为 IE v11.0.13)会出现 EDIT 链接,但不会响应鼠标单击。我花了几个小时试图找出原因,但不知所措。链接的href 甚至出现在IE 状态栏中,但不会响应单击。但是,它会响应双击。为什么在 IE 中单击不会触发点击事件?

第二个问题:为什么:hover样式在IE和FF中都没有应用于EDIT链接?

【问题讨论】:

  • 您可能需要测试类似var target = event.target ? event.target : event.srcElement; 这样的事件目标,然后检查target.id === 'insertlink'(顺便说一句,我建议使用=== 而不是==
  • @ochi 谢谢我明白你的意思,但是事件一开始并没有触发,这是主要问题。奇怪的是,它只在 IE 中双击时触发,然后代码运行正常。单击时缺少事件触发是问题所在。

标签: jquery internet-explorer onclick


【解决方案1】:

啊,看来问题出在鼠标悬停/鼠标移出。将$(".sectionstyle").mouseover(...) 更改为$(".sectionstyle").mouseenter(...),并类似地将mouseout() 替换为mouseleave(),即可解决此问题。

感谢 Reddit 的 /r/webdev 中的 /u/rbobby 提供的那个,他们在 SO 之前得到了它。 :)

【讨论】:

    猜你喜欢
    • 2010-12-20
    • 1970-01-01
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多