Javascript 检查光标是否位于元素';父母
我有这个htmlJavascript 检查光标是否位于元素';父母,javascript,jquery,Javascript,Jquery,我有这个html <div class='parent'> <div class='child'></div> </div> 您需要停止对子项执行事件的操作: $(body).on('mouseover', '.child' , function(e){ e.stopPropagation(); }); $(body).on('mouseout', '.child' , function(e){ e.stopPr
<div class='parent'>
<div class='child'></div>
</div>
您需要停止对子项执行事件的操作:
$(body).on('mouseover', '.child' , function(e){
e.stopPropagation();
});
$(body).on('mouseout', '.child' , function(e){
e.stopPropagation();
});
使用mouseenter/mouseleave事件代替mouseover/mouseout:
$(body).on('mouseenter', '.child' , function(e){
});
$(body).on('mouseleave', '.child' , function(e){
});
使用mouseenter
和mouseleave
代替mouseover
和mouseout
,这将解决您的问题
$(document).on('mouseenter', '.parent' , function(){
console.log("Mouse Enter");
});
$(document).on('mouseleave', '.parent' , function(){
console.log("Mouse Leave");
});
不要使用stopPropagation()
,因为
您可以添加css代码吗?在父级中添加显示块并选中“无差异”。这里的关键是你正在停止事件传播(这就是我的答案,你似乎偷了)。是的,你是对的,我只是从你那里复制了错误的代码并更改了事件名称,只是忘记删除愚蠢的e.stopPropagation调用。谢谢提醒。
$(document).on('mouseenter', '.parent' , function(){
console.log("Mouse Enter");
});
$(document).on('mouseleave', '.parent' , function(){
console.log("Mouse Leave");
});