如何控制层在某个时间显示或者隐藏
解决思路
从上例中我们掌握了控制层的隐藏与显示的方法,现在要解决的就是计算在六秒(假设值)后执行隐藏层的代码。
具体步骤
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的运用。