所以我一直在尝试举办此活动,如果你将鼠标悬停在后退按钮附近,这个div会显示一条消息,说明"你要去哪里? :("。我已经开始工作,但过了一段时间,它变得很烦人。
HTML:
<div class="leaveModal dontgo">
<h1>Where are you going? :(</h1>
<div class="closebutton">
<i class="fa fa-times fa-lg" aria-hidden="true"></i>
</div>
</div>
JavaScript的:
$("body").on("mousemove",function(event){
if (event.pageX < 100 && event.pageY < 50) {
$(".dontgo").fadeIn(600);
}
}
/* Close Button */
$(".fa-times").click(function(){
$(".dontgo").fadeOut(500);
})
每当我按下关闭按钮它关闭,但它会继续触发事件。当我向后退按钮移动时,人们会感到非常恼火。
有人知道如何在按下关闭按钮一次后不触发jQuery事件吗?
答案 0 :(得分:0)
单击按钮时关闭body
侦听器怎么办?
$(".fa-times").click(function(){
$("body").off("mousemove"); //Turn off the listener for body
$(".dontgo").fadeOut(500);
})
编辑:对于此答案的评论中提及war10ck,上述代码段的$("body").off();
部分将删除绑定到body
的所有事件。我已经编辑了我的答案,而是说$("body").off("mousemove");
,这将删除仅鼠标移动事件。
答案 1 :(得分:0)
$("body").off
可能会损坏其他触发事件!因此,remove
是可选的。
$(".fa-times").click(function(){
$(".dontgo").fadeOut(500).remove();
})