父元素绑定了鼠标移出事件,子元素绑定了点击事件,当点击子元素事件多次时会偶尔触发父元素的移出事件
即使用了e.stopPropagation();来阻止冒泡还是不行,我用了原生js和jquery都是这样,百度jquery的有说在子元素的点击事件里面加returnfal...
即使用了e.stopPropagation();来阻止冒泡还是不行,我用了原生js和jquery都是这样,百度jquery的有说在子元素的点击事件里面加return false;也不行,不知道是啥问题?
<div class="father">
<div class="son">子元素</div>
</div>
jquery:
$(".father").mouseenter(function(){}).mouseleave(function(){
console.log('离开');
})
$(".son").on('click',function(e){
e.stopPropagation();
console.log('点击');
return false;
})
js原生:
document.querySelector(".father").onmouseout=function(e){
console.log('离开...');
};
document.querySelector(".son").onclick=function(e){
e.stopPropagation();
console.log('点击...');
}; 展开
<div class="father">
<div class="son">子元素</div>
</div>
jquery:
$(".father").mouseenter(function(){}).mouseleave(function(){
console.log('离开');
})
$(".son").on('click',function(e){
e.stopPropagation();
console.log('点击');
return false;
})
js原生:
document.querySelector(".father").onmouseout=function(e){
console.log('离开...');
};
document.querySelector(".son").onclick=function(e){
e.stopPropagation();
console.log('点击...');
}; 展开
2个回答
2017-12-03
展开全部
点击事件还会触森则激此袜发移出事件啊、、、那你确定没有移动鼠标啊、
你有没有测试过其他的浏览器盯裂呢。。。
你有没有测试过其他的浏览器盯裂呢。。。
追问
360,火狐没有问题,谷歌有问题,为了防止鼠标移出去我把子元素的宽高设置的比较大,不过谷歌的还是出现了这个问题
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询