JavaScript实现顶端的大广告
摘要:估计上网的人都见过门户网站上那个出来一会才会消失的“巨大”广告。感觉这个代码难度不大。
首先显示广告,然后再setTimeout让广告消失就可以了,试着写了一下代码:
<script type="text/javascript"> function addEventSimple(obj,evt,fn){ if(obj.addEventListener){ obj.addEventListener(evt,fn,false); }else if(obj.attachEvent){ obj.attachEvent('on'+evt,fn); } } addEventSimple(window,'load',test); var ad; function test(){ ad = document.createElement('div'); ad.style.fontSize = "40px"; ad.style.lineHeight = "50px"; var str = "我是一个超级大的广告!!!…………<br />" ad.innerHTML = str + str + str + str; var bodyElement = document.body; bodyElement.insertBefore(ad,bodyElement.firstChild); setTimeout('ad.style.display="none"',2000); } </script>
代码的思路比较简单,首先创建一个ad变量,用它来存储要显示的广告代码。然后用insertBefore函数将函数插入到网页的body元素的第一个子元素前面。然后用setTimeout来控制广告在两秒后消失。
值得注意的是将ad设置为全局变量,因为setTimeout的命名空间不是所在的函数,所以它无法访问test函数内的局部变量。