JS 时间标记,求弹出层1小时只弹一次的JS代码

现在网页已经实现了的效果是:打开,自动弹出层,数秒后自动关闭。效果已经实现,但是有个问题,就是每次刷新页面他都弹出层。。。。比较烦人,所以想加个时间标记,cookie控制一小时(或十二小时)只弹一次的JS代码,由于对JS了解浅薄,这段代码不会加,特来求高人指点,求完整代码。

以下为JS代码,自动刷秒,自动关闭弹出层等代码。现求高人添加上述的时间标记,cookie控制一小时(或十二小时)只弹一次的JS代码。
<SCRIPT LANGUAGE="javascript">
setTimeout('f()',8000);
function f()
{
document.getElementById("reg-select").style.display="none";
}
</SCRIPT>
<script type="text/javascript">
function run(){
var s = document.getElementById("dd");

s.innerHTML = s.innerHTML * 1 - 1;
}
window.setInterval("run();", 1000);
</script>

其中"reg-select"为弹出层样式,就不复制出来了,百度提问有字数限制。
网上找了不少JS代码,cookie控制的1小时只弹一次的代码,但是不会添加。。。囧、、、

就是每次弹窗关闭的时候在cookie上记录当前的时间,然后在后台开个计时器,每隔一秒判断一次当前时间减去在cookie记录的时间看是不是大于1小时,如果大于就是弹出。追问

原理,思路什么的都了解,主要是不会写代码、。。。。

追答

你等等,我写个看看,加我QQ877818749

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-02-04
<SCRIPT LANGUAGE="javascript">
now=new Date().getTime();
if (!isNaN(parseInt(sessionStorage.getItem('begin')))
alread=sessionStorage.getItem('begin');else setTimeout(f,8000)
if(now-already>3600000)setTimeout('f()',8000);
function f()
{
timestart=new Date().getTime()
sessionStorage.setItem('begin',timestart);
document.getElementById("reg-select").style.display="none";
}
</SCRIPT>
<script type="text/javascript">
function run(){
var s = document.getElementById("dd");

s.innerHTML = s.innerHTML * 1 - 1;
}
window.setInterval("run();", 1000);
</script>

这样当刷新页面的时候,是不会弹窗的!
如果关闭浏览器了重新开,有的会弹窗,有的就不会弹窗!
不过比用cookie爽得多!追问

效果不明显,本地测试和服务器测试都是一样,只要刷新页面也弹出层。貌似没怎起作用。
不过还是谢谢你的回答帮助~~~

追答

怎么可能呢?我把代码修改了下!在chrome下通过!

追问

IE10 、火狐 下测试确实不可用,不逗你。。。。貌似还是cookie靠谱点,之前在网上找的一个就是cookie控制,12小时弹一次,但是不会添加修改在我的这段上,后来放弃了。

本回答被网友采纳