只运行一次js文件一次
答
当你的介绍函数运行时,首先让它检查你稍后将设置的cookie。如果cookie存在,则函数应该中止而不显示效果。如果cookie不存在,则显示效果并设置cookie。
当然,这个解决方案只有在每个网页浏览器安装时才是可靠的(假设访问时启用了cookie)。因此,如果同一用户在另一个浏览器中访问该网站,他们可能会再次看到效果。相反,如果新用户使用已经访问该网站的浏览器,则他们将看不到效果。
这并不完美,但可能“足够好” - 它涵盖了主要的用例并且易于实现。
答
一个解决方案是使用HTML5 sessionStorage
来记录介绍曾经播放过的时间。该记忆将持续进行会话:
var played = sessionStorage.getItem("played");
if (played !== "true") {
// play intro
// mark as played when finished
sessionStorage.setItem("played", "true");
}
不可靠。 – aaronasterling 2012-03-29 22:47:07
你可以使用cookies,但它们不可靠。 IP追踪也不完美。本地存储也需要用户的同意。简答:不。 – Halcyon 2012-03-29 22:47:43
这个邪恶的东西叫做evercookie。 – Bakudan 2012-03-29 22:49:24