我想创建一个简单的HTML表格,当用户将鼠标悬停在行上时,该行会显示高亮。不幸的是,在IE浏览器中,CSS的:hover伪类无法生效,这让我必须使用JavaScript来模拟它。我可以使用
onmouseenter
或onmouseover
两种方式。它们之间的区别是什么?我应该使用哪一个呢?onmouseenter
或onmouseover
两种方式。它们之间的区别是什么?我应该使用哪一个呢?onmouseenter
和 onmouseover
都在鼠标进入一个元素的边界时触发。然而,如果鼠标进入第一个元素内的子元素,onmouseenter
不会再次触发(不会冒泡)。
你可以通过为IE中的所有元素添加:hover
支持来节省一些编码工作:
尝试使用csshover.htc。
onmouseenter
,Chrome从版本30(2013年10月)开始支持它(来源)。我没有找到Safari的信息,除了这个webkit bug,在该bug中修复于2013年4月。所以现在onmouseenter
应该可以在大多数主要浏览器的用户中使用。 - ecraig12345