例如,如果我做$('div#something').mouseout(function(){});
那么当我悬停在#something div内的文本而不是离开div时,该函数将会触发。为什么.mouseOut()在鼠标悬停在mouseOut目标文本上时触发?
我希望它只在离开div时触发,而不是当我将鼠标悬停在div内的文本上时。
这是怎么发生的?
例如,如果我做$('div#something').mouseout(function(){});
那么当我悬停在#something div内的文本而不是离开div时,该函数将会触发。为什么.mouseOut()在鼠标悬停在mouseOut目标文本上时触发?
我希望它只在离开div时触发,而不是当我将鼠标悬停在div内的文本上时。
这是怎么发生的?
即使“离开”表示它正在输入一个子元素(文本将会 - 至少在某些浏览器上),mouseout会触发。
您可能想改为使用“mouseleave”。和包括它移动到其子元素时 - 当鼠标离开的元素
鼠标移开火灾。看到这个jsFiddle:http://jsfiddle.net/minitech/kZcCr/