mouseover事件与mouseenter事件的区别

<div> 父亲
    <span> 第一代
        <a>第二代</a>
  </
span>
</
div>

mouseover:鼠标经过被选元素及其子元素时会触发该事件,对应mouseout

      在错误的元素响应mouseover或mouseout事件的情况下。假设在我们的例子中,为<div>添加了一个mouseout事件处理程序。当用户的鼠标指针退出这个<div>时,会按照预期运行mouseout处理程序。因为这个过程发生在顶层元素上,所以其他元素不会取得这个事件。但是,当指针从<a>元素上离开时,<a>元素也会取得一个mouseout事件。然后,这个事件会向上冒泡到<span>和<div>,从而触发上述的事件处理程序。然而,这种冒泡机制不是我们所希望的,因为造成反复触发事件,在IE中会出现闪烁。

mouseenter:只有鼠标经过被选元素时才会触发该事件,而不会冒泡到父级,对应mouseleave

      mouseenter或mouseleave事件只会触发一次,不会出现闪烁等不好的效果。

原文地址:https://www.cnblogs.com/jingjing-blog/p/4586230.html