0

我们有一个模式对话框,当用户离开浏览器主体时激活。这是使用下面的 .one() 代码。.one 不应该显示一次模态吗?是否有可能每个用户只执行一次(cookie?)所以每次他们回到页面时,当他们离开身体时不会重复?

jQuery("body").one('mouseleave', function() {
    jQuery("#modal-background").toggleClass("active");
    jQuery("#modal-content").toggleClass("active");
});

有什么建议么?

4

1 回答 1

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 });
   }
});
于 2013-06-26T04:15:08.297 回答