onMouseOver和onMouseEnter之间的区别

C. *_*oss 27 html javascript dom-events

我正在尝试使用一个简单的html表,当用户将鼠标悬停在其上时突出显示一行.不幸的是,css悬停项不适用于IE.这让我在javascript中模拟它.我可以使用onmouseenteronmouseover.

它们之间有什么区别,我应该使用哪一个?

Che*_*try 41

首先,onmouseenter是IE特定的.除非您使用可以模拟此事件的jQuery,否则在其他浏览器中不起作用.

其次,既onmouseoveronmouseenter火灾当鼠标进入元素的边界.但是,onmouseenter如果鼠标在第一个元素中输入子元素,则不会再次触发(不会冒泡).

  • 更新:Firefox在版本10(2012年1月)中开始支持`onmouseenter`,Chrome在版本30(2013年10月)中开始支持它([来源](https://developer.mozilla.org/en-US/docs/Web/活动/的mouseenter)).除了[此webkit bug](https://bugs.webkit.org/show_bug.cgi?id=18930)之外,我找不到Safari的信息,修复程序于2013年4月提交.所以`onmouseenter`应该可以工作现在主流浏览器的大多数用户. (9认同)

Ark*_*das 6

与 onmouseover 事件不同,onmouseenter 事件不会冒泡。换句话说,当用户将鼠标指针移到对象包含的元素上时,onmouseenter 事件不会触发,而 onmouseover 会触发。

我总是使用onmouseover。我出于同样的目的使用 onmouseover(突出显示一行)。