javascript实现延时显示提示框特效代码
本文实例讲述了JavaScript使用setTimeout实现延迟弹出警告框的方法。分享给大家供大家参考。具体如下:
先给大家展示一个延迟/定时/强制弹出窗口的JS代码
参数解释: 设置时间:Then.setTime(Then.getTime()+1*60*60*1000) mylove/ttan.htm(过渡网页) ttan.htm中的http://弹出网页/是要弹出的网页 scroll:1(滚动条) status:1(状态栏) help:1(帮助按钮) toolbar=1(工具栏) resizable:1(是否可以用鼠标拖动改变大小) dialogWidth:800px(宽度) dialogHeight:600px(高度) 3000(延迟弹出的时间,单位:毫秒。1秒=1000毫秒) <!--弹出广告--> <scriptlanguage="JavaScript"> functionGet(){ varThen=newDate() Then.setTime(Then.getTime()+1*60*60*1000) varcookieString=newString(document.cookie) varcookieHeader="Cookie1=" varbeginPosition=cookieString.indexOf(cookieHeader) if(beginPosition!=-1){ }else {document.cookie="Cookie1=POPWIN;expires="+Then.toGMTString() focusid=setTimeout("focus();window.showModelessDialog('ttan.htm','','scroll:0;status:0;help:0;resizable:0;d ialogWidth:0px;dialogHeight:0px')",3000) window.focus(); } }Get(); </script> <!--弹出结束--> ttan.htm的内容: <scriptlanguage="javascript"> <!-- window.open("http://弹出网页/"); //--> </script> <scriptLANGUAGE="JavaScript"> <!-- setTimeout('window.close();',0) //--> </script> 可以实现同一IP一定时间内只弹出一次,可以实现延迟弹出,可以实现强制弹出!!
下面的代码执行后点击按钮会延迟弹出一个警告框,主要演示了setTimeout的使用方法
<!DOCTYPEhtml> <htmllang="en"> <head> <metacharset="UTF-8"> <title>延时显示提示框</title> <style> #div1{ float:left; width:60px; height:60px; background-color:aqua; } #div2{ position:relative; float:left; margin:010px; width:200px; height:200px; background-color:#cccccc; display:none; } </style> <script> window.onload=function(){ varoDiv1=document.getElementById('div1'); varoDiv2=document.getElementById('div2'); vartimer=null; //oDiv1.onmouseover=function(){ //clearTimeout(timer); //oDiv2.style.display='block';//鼠标移入div1时显示div2 //}; // //oDiv1.onmouseout=function(){ //timer=setTimeout(function(){ //oDiv2.style.display='none';//鼠标移除div1时隐藏div2 //},500);//为了从div1移入div2,所以移出div1时div2隐藏应该有一个延时设置 //}; // //oDiv2.onmouseover=function(){ //clearTimeout(timer);//清除延时器设置,当鼠标移入div2时,div2应当显示 //}; // //oDiv2.onmouseout=function(){ //timer=setTimeout(function(){ //oDiv2.style.display='none';//当鼠标移出div2时,div2应当隐藏 //},500);//当鼠标移出div2并移入div1时,div2会闪烁一下再显示,设置一个延时,清除闪烁的效果; ////但是设置延时器之后,鼠标移入div1时,div2却隐藏了,原因是setTimeout, ////应当清除延时器,在oDiv1.onmouseover事件中添加,清除延时器的代码 //}; //由于这四个事件中代码两两对应地相同或相似,可以做如下简化处理: oDiv1.onmouseover=oDiv2.onmouseover=function(){ clearTimeout(timer); oDiv2.style.display='block'; /*鼠标移入div1时显示div2,虽然oDiv2.onmouseover事件中没有写oDiv2.style.display='block'; 但是实际上oDiv2是'block'状态,多写一句代码没有实质性影响*/ }; oDiv1.onmouseout=oDiv2.onmouseout=function(){ timer=setTimeout(function(){ oDiv2.style.display='none';//鼠标移除div1时隐藏div2 },500);//为了从div1移入div2,所以移出div1时div2隐藏应该有一个延时设置 }; //简化后的代码执行结果跟前面的代码效果完全一致. } </script> </head> <body> <h2>延时提示框</h2> <divid="div1"></div> <divid="div2"></div> </body> </html>
延时提示框编写时需要注意的点都记录在注释当中,逐个对照注意一下,这个功能看过视频教程之后实现起来比较顺畅,原因是在编写代码之前对所需功能做了一个列表按照列表一一实现,出现问题再进行相应的调整比上来直接写代码强多了。