对于深入了解前端的人来说,这可能有点有趣。
这没有意义,自己试试:
- 打开包含
href
+target="_blank"
的链接 - 关闭打开的选项卡并返回到原始选项卡
- 链接状态现在为
:focus
那很好。但这有什么问题呢?
- 打开包含点击时
window.open()
事件的链接 - 关闭打开的选项卡并返回到原始选项卡
-
链接状态现在
:hover
,即使它没有真正悬停。除非你开始移动光标,否则你无法对此做任何事情。trigger('mouseout')
无济于事,也没有什么真正起作用。
这是一个 JSFiddle – 我为每个事件添加了console.log()
输出,并使状态具有不同的颜色,因此您可以看得更清楚。
浏览器保持:hover
状态,直到鼠标经过其他事物,如果在打开新窗口/选项卡时鼠标保持在同一位置,它将保持:hover
。当您将焦点返回到页面时,只要您将鼠标移到其他内容上,:hover
就会被删除。该行为在某些计算机中可能有问题(不一定是浏览器故障),并且会一直存在,直到您单击另一个位置。