mouseenter与mouseleave是指鼠标进入或离开窗体的可见部分时发生的,至于mousemove是移过组件发生的。
这个案例对你理解有好处:
将Panel作为一个容器,里面放置了若干按钮,当鼠标移至Panel时,Panel划入屏幕,鼠标离开时划出,但通过MouseLeave事件实现,只要鼠标移至按钮上就会激发MouseLeave事件,而此时鼠标仍在Panel的整体范围内。而如果通过mousemove事件实现,则不会出现这样的问题。
原因是:button遮住了panel的可见部分,于是发生mouseleave事件,但不会发生mousemove事件。而假如你鼠标彻底离开panel,则两个事件同时触发。
我想不是同时执行
他们的处理肯定会有先后顺序的