Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在用户端只运行一次特定脚本?_Javascript_Html - Fatal编程技术网

Javascript 如何在用户端只运行一次特定脚本?

Javascript 如何在用户端只运行一次特定脚本?,javascript,html,Javascript,Html,例如,当用户第一次输入URL时, 将出现“喜欢我们在FB上的页面”这样的弹出窗口 当用户浏览网站并返回首页时, 上部弹出窗口不应出现 如果我使用window.onload或script, 它将在每次加载页面时出现 还有别的办法吗 谢谢。您可以使用cookies: 或HTML5网站存储: 尽管如此,Cookies还是得到了更多的支持 其基本思想是,您存储一个cookie,说明您显示了弹出窗口,每当您重新加载主页时,您都会检查cookie是否存在。如果存在,则不需要弹出窗口,否则显示弹出窗口。您可以

例如,当用户第一次输入URL时, 将出现“喜欢我们在FB上的页面”这样的弹出窗口

当用户浏览网站并返回首页时, 上部弹出窗口不应出现

如果我使用window.onload或script, 它将在每次加载页面时出现

还有别的办法吗


谢谢。

您可以使用cookies:

或HTML5网站存储:

尽管如此,Cookies还是得到了更多的支持


其基本思想是,您存储一个cookie,说明您显示了弹出窗口,每当您重新加载主页时,您都会检查cookie是否存在。如果存在,则不需要弹出窗口,否则显示弹出窗口。

您可以使用cookies:

或HTML5网站存储:

尽管如此,Cookies还是得到了更多的支持

其基本思想是,您存储一个cookie,说明您显示了弹出窗口,每当您重新加载主页时,您都会检查cookie是否存在。如果存在,则不需要弹出窗口,否则显示弹出窗口。

您可以这样做。去我的,你会看到消息,然后,如果你刷新你不会

//检查我们以前是否询问过他们(在过去5分钟内)
if(!(new RegExp('homeFacebookMessage=true')).test(document.cookie)){
//记下我们要求他们的临时(5分钟)记录
document.cookie='homeFacebookMessage=true;path=/;max age='+5*60+';';
//询问他们(这里是您的代码)
警惕(“脸上像我们一样!”);
}
你甚至可以尝试一些,这将一直工作到IE8。给你

//检查我们是否已经询问过他们
如果(!localStorage.getItem('homeFacebookMessage')){
//记下我们已经问过他们了
setItem('homeFacebookMessage','true');
//询问他们(这里是您的代码)
警惕(“脸上像我们一样!”);
}
localStorage
的区别在于,它是永久性的,不会在5分钟后提醒用户“喜欢”(在第一个示例中,当我们的cookie过期时)。
但是,如果您真的喜欢web存储方法,您可以为homeFacebookMessage指定一个日期/时间,并检查它是多久以前的,而不是简单地测试它的存在以获得相同的效果。

您可以这样做。去我的,你会看到消息,然后,如果你刷新你不会

//检查我们以前是否询问过他们(在过去5分钟内)
if(!(new RegExp('homeFacebookMessage=true')).test(document.cookie)){
//记下我们要求他们的临时(5分钟)记录
document.cookie='homeFacebookMessage=true;path=/;max age='+5*60+';';
//询问他们(这里是您的代码)
警惕(“脸上像我们一样!”);
}
你甚至可以尝试一些,这将一直工作到IE8。给你

//检查我们是否已经询问过他们
如果(!localStorage.getItem('homeFacebookMessage')){
//记下我们已经问过他们了
setItem('homeFacebookMessage','true');
//询问他们(这里是您的代码)
警惕(“脸上像我们一样!”);
}
localStorage
的区别在于,它是永久性的,不会在5分钟后提醒用户“喜欢”(在第一个示例中,当我们的cookie过期时)。

但是,如果您真的喜欢web存储方法,您可以为
homeFacebookMessage
指定一个日期/时间,并检查它的存在时间,而不是简单地测试它的存在以获得相同的效果。

使用Cookie来实现这一点。使用Cookie来实现这一点。投票给他好建议的每个人。我已经为他实现了实际的演示example@KapilManandhar然后点击向上的三角形或答案旁边的勾号:)投票给每个给他好建议的人。我已经为他实现了实际的演示example@KapilManandhar然后点击向上三角形或答案旁边的勾号:)向上投票获得好的建议,我正在实施一个示例和比较,而你回答时,我的答案现在是向上感谢你分享知识。应该使用。投票的声望不高+1给你!投票赞成好的建议,我正在实施一个例子和比较,而你回答,我的答案现在是感谢你分享知识。应该使用。投票的声望不高+1给你!砰的一声。