onMouseOver和onMouseEnter之间的区别

时间:2009-10-28 17:41:24

标签: javascript html javascript-events

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

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

3 个答案:

答案 0 :(得分:36)

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

其次,当鼠标进入元素边界时,onmouseenteronmouseover都会触发。但是,如果鼠标在第一个元素中输入子元素,则onmouseenter不会再次触发(不会冒泡)。

答案 1 :(得分:3)

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

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

答案 2 :(得分:0)

您也可以通过为IE中的所有元素添加:hover支持来节省一些编码:
试试csshover.htc