我们有一个模态对话框,当用户离开浏览器主体时会激活该对话框。这是使用下面的.one()代码。不是.one应该一次显示模态?是否有可能每个用户只执行一次(cookie?),所以每当他们回到页面时,当他们离开身体时不会重复?
jQuery("body").one('mouseleave', function() {
jQuery("#modal-background").toggleClass("active");
jQuery("#modal-content").toggleClass("active");
});
有什么建议吗?
答案 0 :(得分:0)
检查函数内部的cookie值,如果值不是1,则表示模态对话框尚未显示,它进入if并显示模态对话框并将值设置为1.然后下一次cookie是1,它永远不会进入if,因此它永远不会显示模态对话框。
jQuery("body").one('mouseleave', function() {
if(jQuery.cookie("dialogDisplayed") !==1){
jQuery("#modal-background").toggleClass("active");
jQuery("#modal-content").toggleClass("active");
jQuery.cookie("dialogDisplayed", '1', { expires: 30 });
}
});