如何控制层在某个时间显示或者隐藏
解决思路:
从上例中我们掌握了控制层的隐藏与显示的方法,现在要解决的就是计算在六秒(假设值)后执行隐藏层的代码。
具体步骤:
1.插入广告代码(在层内)
<div id="demo" style="position:absolute;left:100px;top:50px">
在这儿插入你广告代码
</div>
2.插入控制层在网页加载完成后6秒隐藏的JavaScript脚本。
<script>
function ad_hide(){
setTimeout(’document.getElementById("demo").style.display="none"’,6000)
}
window.attachEvent(ad_hide(),"onload")
</script>
3.完整代码。
<div id="demo" style="position:absolute;left:100px;top:50px">
广告代码
</div>
<script>
function ad_hide(){ setInterval(’document.getElementById("demo").style.display="none"’,6000)//六秒(6000毫秒)后设置id为demo的层为隐藏
}
//网页加载完成后执行ad_hide()函数
window.attachEvent(ad_hide(),"onload")
</script>
注意:在本例中脚本函数需要用onload事件来触发,否则可能会造成找不到对象的错误。
技巧:要让网页加载完成后执行ad_hide()函数,可以直接在body标签中加上onload事件触发,如:
<body onload="ad_hide()">
提示:关于setTimeout方法的说明及使用方法,请参考第三部分问题26。
特别提示
本例代码的运行效果如图 1.3.15、图1.3.16所示。
图1.3.15 页面加载完成时的广告
图1.3.16 页面加载完成6秒后广告层隐藏
特别说明
由于在上一例中介绍了控制层的显示与隐藏的方法,所以本例的知识点是setTimout方法和页面加载完成事件onload的运用。