事件委托中的目标元素的mouseover事件冒泡到委托元素,怎么取消呢?
1.动态生成的元素$(".bizPart"),目的是在mouseover元素$(".bizPart")的时候,另一个元素$("#servTip")移动。
2.代码:
$("body").on('mouseover', $(".bizPart"), function (e) {
$("#servTip").css({ "left": x, "top": y, "opacity": 1 });
e.stopPropagation(); //没起作用
}
3.问题:现在是不仅在$(".bizPart")上移动鼠标$("#servTip")会动,而且在body上移动鼠标$("#servTip")也会动,我觉得是冒泡上去了,但是取消又没有用,怎么才能取消移上body,不触这个事件呢?谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
建议在
.bizPart
元素外面在包一层.wrap
,你这样是直接绑定在body上的事件,只能阻止冒泡到body以上的元素。望采纳
通过if判断e.currentTarget的元素是否是.bizPart,是的话再执行函数体
$("body").on('mouseover', ".bizPart", function (e) {
$("#servTip").css({ "left": x, "top": y, "opacity": 1 });
}
好像这样就可以了呢,谢谢各位