Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery触发out事件,即使它应该仍然处于_Javascript_Jquery - Fatal编程技术网

Javascript jQuery触发out事件,即使它应该仍然处于

Javascript jQuery触发out事件,即使它应该仍然处于,javascript,jquery,Javascript,Jquery,我面临着一个相当棘手的问题。我为页面上的li元素注册了两个事件处理程序,一个用于mouseenter,另一个用于mouseout。它内部有多个div区域。当我离开li元素时,它调用out处理程序,这是正常的。不正常的是,当我在li中留下div时,也会触发out处理程序 下面是一幅说明它的图片。蓝色区域是li元素,我为其注册了enter和out事件。 我试图在内部div上注册处理程序,这将停止传播,但它只会在我输入这些内部div时触发out处理程序 知道这里出了什么问题吗?用mouseleave

我面临着一个相当棘手的问题。我为页面上的
li
元素注册了两个事件处理程序,一个用于
mouseenter
,另一个用于
mouseout
。它内部有多个
div
区域。当我离开
li
元素时,它调用
out
处理程序,这是正常的。不正常的是,当我在
li
中留下
div
时,也会触发
out
处理程序

下面是一幅说明它的图片。蓝色区域是
li
元素,我为其注册了
enter
out
事件。

我试图在内部
div
上注册处理程序,这将停止传播,但它只会在我输入这些内部div时触发
out
处理程序


知道这里出了什么问题吗?

mouseleave
代替mouseout
Mouseout
每次鼠标从目标的正上方离开时都会触发。因此,当您输入
div
时,您的鼠标会离开
li
并在div上。但它仍然在
li
中。当然,使用mouseleave可以使其工作

从JQuery文档:

mouseleave事件在处理事件的方式上与mouseout不同 冒泡。如果本例中使用了mouseout,则当鼠标 指针移出内部元素时,处理程序将 触发。这通常是不受欢迎的行为。“无鼠事件”, 另一方面,仅当鼠标离开时才触发其处理程序 它绑定到的元素,而不是后代。所以在这个例子中 当鼠标离开外部元素时,会触发处理程序,但不会触发 内在因素


请张贴您的密码。。。我们不能用照片做任何事情。