单击Anywhere弹出窗口一次pervisit?

时间:2015-01-05 05:28:12

标签: javascript jquery html

任何人都可以帮助您在任何地方点击时打开新窗口,但只能访问一次。 例如,您访问google.com并点击其中的任何位置,新窗口将打开但只有一次,第二次点击将无法打开窗口 网站示例:http://afowles.blogspot.com
我的脚本是

Function popup() {
   window.open ("http://www.stackoverflow.com","popup","menubar=1,resizable=1,width=450,height=550");

然后提出

onclick="popup()"
身体。
上面的代码在网站上每次点击都会显示新窗口。我该怎么办才能让它只显示一次?

2 个答案:

答案 0 :(得分:1)

设置全局变量 一个= 1; 然后在函数中检查变量的值。执行windows.open后,更改全局变量的值,以便不再执行windows.open。

代码:

<script>
var a=0;
function popup() {
if(a==0){
window.open ("http://www.stackoverflow.com","popup","menubar=1,resizable=1,width=450,height=550");
a++;
}
}
</script>

答案 1 :(得分:0)

首先,您需要自己定义访问的内容,即每天一次,每周一次,或每次用户登陆您的网站,每个页面加载等等。

假设您希望用户在浏览时保持一定的持久性,那么您在网站上需要做的就是设置一个条件,以便在第一次点击之前进行评估,如果结果显示用户“首先访问然后打开页面。同时,设置下次要检查的值(并且很可能是基于当前实现的所有后续点击)。 LocalStorage或cookies将是您的最佳选择。

我会按照以下方式设置:

//check page is loaded
if (cookie.firstVisit) {
  //add click event listener
} else {
  //set cookie.firstVisit to false
  //remove click event listener
}

不要在此处详细说明如何使用Cookie,请查看本文解释所有内容:How to set/unset cookie with jQuery?

最后,当有人点击您网页上的任何位置而没有他们明确希望执行该操作时,打开一个新窗口在大多数情况下被认为是不好的做法。但是,我不知道你的情况,所以这可能是最好的行动方案,但认为值得一提。