javascript實(shí)現(xiàn)延時(shí)顯示提示框特效代碼
本文實(shí)例講述了JavaScript使用setTimeout實(shí)現(xiàn)延遲彈出警告框的方法。分享給大家供大家參考。具體如下:
先給大家展示一個(gè)延遲/定時(shí)/強(qiáng)制彈出窗口的JS代碼
參數(shù)解釋: 設(shè)置時(shí)間:Then.setTime(Then.getTime() + 1*60*60*1000) mylove/ttan.htm(過(guò)渡網(wǎng)頁(yè)) ttan.htm中的 http://彈出網(wǎng)頁(yè)/ 是要彈出的網(wǎng)頁(yè) scroll:1(滾動(dòng)條) status:1(狀態(tài)欄) help:1(幫助按鈕) toolbar=1(工具欄) resizable:1(是否可以用鼠標(biāo)拖動(dòng)改變大小) dialogWidth:800px(寬度) dialogHeight:600px(高度) 3000(延遲彈出的時(shí)間,單位:毫秒。1秒=1000毫秒) <!--彈出廣告--> <script language="JavaScript"> function Get(){ var Then = new Date() Then.setTime(Then.getTime() + 1*60*60*1000) var cookieString = new String(document.cookie) var cookieHeader = "Cookie1=" var beginPosition = 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> <!--彈出結(jié)束--> ttan.htm的內(nèi)容: <script language="javascript"> <!-- window.open("http://彈出網(wǎng)頁(yè)/"); //--> </script> <script LANGUAGE="JavaScript"> <!-- setTimeout('window.close();', 0) //--> </script> 可以實(shí)現(xiàn)同一IP一定時(shí)間內(nèi)只彈出一次,可以實(shí)現(xiàn)延遲彈出,可以實(shí)現(xiàn)強(qiáng)制彈出??!
下面的代碼執(zhí)行后點(diǎn)擊按鈕會(huì)延遲彈出一個(gè)警告框,主要演示了setTimeout的使用方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>延時(shí)顯示提示框</title> <style> #div1 { float: left; width: 60px; height: 60px; background-color: aqua; } #div2 { position: relative; float: left; margin: 0 10px; width: 200px; height: 200px; background-color: #cccccc; display: none; } </style> <script> window.onload = function () { var oDiv1 = document.getElementById('div1'); var oDiv2 = document.getElementById('div2'); var timer = null; // oDiv1.onmouseover = function () { // clearTimeout(timer); // oDiv2.style.display = 'block'; //鼠標(biāo)移入div1時(shí)顯示div2 // }; // // oDiv1.onmouseout = function () { // timer = setTimeout(function () { // oDiv2.style.display = 'none'; //鼠標(biāo)移除div1時(shí)隱藏div2 // }, 500); //為了從div1移入div2,所以移出div1時(shí)div2隱藏應(yīng)該有一個(gè)延時(shí)設(shè)置 // }; // // oDiv2.onmouseover = function () { // clearTimeout(timer); //清除延時(shí)器設(shè)置,當(dāng)鼠標(biāo)移入div2時(shí),div2應(yīng)當(dāng)顯示 // }; // // oDiv2.onmouseout = function () { // timer = setTimeout(function () { // oDiv2.style.display = 'none'; //當(dāng)鼠標(biāo)移出div2時(shí),div2應(yīng)當(dāng)隱藏 // }, 500); //當(dāng)鼠標(biāo)移出div2并移入div1時(shí),div2會(huì)閃爍一下再顯示,設(shè)置一個(gè)延時(shí),清除閃爍的效果; // // 但是設(shè)置延時(shí)器之后,鼠標(biāo)移入div1時(shí),div2卻隱藏了,原因是setTimeout, // // 應(yīng)當(dāng)清除延時(shí)器,在oDiv1.onmouseover事件中添加,清除延時(shí)器的代碼 // }; // 由于這四個(gè)事件中代碼兩兩對(duì)應(yīng)地相同或相似,可以做如下簡(jiǎn)化處理: oDiv1.onmouseover = oDiv2.onmouseover = function () { clearTimeout(timer); oDiv2.style.display = 'block'; /* 鼠標(biāo)移入div1時(shí)顯示div2,雖然oDiv2.onmouseover事件中沒(méi)有寫oDiv2.style.display = 'block'; 但是實(shí)際上oDiv2是'block'狀態(tài),多寫一句代碼沒(méi)有實(shí)質(zhì)性影響*/ }; oDiv1.onmouseout = oDiv2.onmouseout = function () { timer = setTimeout(function () { oDiv2.style.display = 'none'; //鼠標(biāo)移除div1時(shí)隱藏div2 }, 500); //為了從div1移入div2,所以移出div1時(shí)div2隱藏應(yīng)該有一個(gè)延時(shí)設(shè)置 }; // 簡(jiǎn)化后的代碼執(zhí)行結(jié)果跟前面的代碼效果完全一致. } </script> </head> <body> <h2>延時(shí)提示框</h2> <div id="div1"></div> <div id="div2"></div> </body> </html>
延時(shí)提示框編寫時(shí)需要注意的點(diǎn)都記錄在注釋當(dāng)中,逐個(gè)對(duì)照注意一下,這個(gè)功能看過(guò)視頻教程之后實(shí)現(xiàn)起來(lái)比較順暢,原因是在編寫代碼之前對(duì)所需功能做了一個(gè)列表按照列表一一實(shí)現(xiàn),出現(xiàn)問(wèn)題再進(jìn)行相應(yīng)的調(diào)整比上來(lái)直接寫代碼強(qiáng)多了。
- 網(wǎng)頁(yè)圖片延時(shí)加載的js代碼
- JavaScript延時(shí)效果比較不錯(cuò)的
- js實(shí)現(xiàn)網(wǎng)頁(yè)圖片延時(shí)加載 提升網(wǎng)頁(yè)打開(kāi)速度
- JS圖片根據(jù)鼠標(biāo)滾動(dòng)延時(shí)加載的實(shí)例代碼
- JS延時(shí)提示框?qū)崿F(xiàn)方法詳解
- 原生javaScript實(shí)現(xiàn)圖片延時(shí)加載的方法
- jQuery 鼠標(biāo)經(jīng)過(guò)(hover)事件的延時(shí)處理示例
- jQuery hover 延時(shí)器實(shí)現(xiàn)代碼
- Jquery實(shí)現(xiàn)圖片預(yù)加載與延時(shí)加載的方法
- jQuery實(shí)現(xiàn)鼠標(biāo)經(jīng)過(guò)事件的延時(shí)處理效果
- jQuery實(shí)現(xiàn)帶延時(shí)功能的水平多級(jí)菜單效果【附demo源碼下載】
- JS/jQuery實(shí)現(xiàn)DIV延時(shí)幾秒后消失或顯示的方法
相關(guān)文章
服務(wù)端渲染nextjs項(xiàng)目接入經(jīng)驗(yàn)總結(jié)分析
這篇文章主要為大家介紹了服務(wù)端渲染nextjs項(xiàng)目接入經(jīng)驗(yàn)總結(jié)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11javascript 產(chǎn)生隨機(jī)數(shù)的幾種方法總結(jié)
這篇文章主要介紹了javascript 產(chǎn)生隨機(jī)數(shù)的幾種方法總結(jié)的相關(guān)資料,希望通過(guò)本文大家能夠掌握如何實(shí)現(xiàn)這樣的方法,需要的朋友可以參考下2017-09-09微信小程序用戶后臺(tái)定位及錄音授權(quán)及請(qǐng)求示例
這篇文章主要為大家介紹了微信小程序用戶后臺(tái)定位及錄音授權(quán)及請(qǐng)求示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Javascript 學(xué)習(xí)筆記 錯(cuò)誤處理
Javascript學(xué)習(xí)筆記:錯(cuò)誤處理.2009-07-07JS實(shí)現(xiàn)的網(wǎng)頁(yè)背景閃電閃爍效果代碼
這篇文章主要介紹了JS實(shí)現(xiàn)的網(wǎng)頁(yè)背景閃電閃爍效果代碼,涉及JavaScript定時(shí)函數(shù)結(jié)合頁(yè)面元素樣式操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10uniapp自定義多列瀑布流組件項(xiàng)目實(shí)戰(zhàn)總結(jié)
這篇文章主要為大家介紹了uniapp自定義多列瀑布流組件實(shí)戰(zhàn)總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09js實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)的五種方法推薦
下面小編就為大家?guī)?lái)一篇js實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)的五種方法推薦。小編覺(jué)得挺不錯(cuò)的?,F(xiàn)在分享給大家,讓大家參考一下2016-03-03js獲取select標(biāo)簽的值且兼容IE與firefox
本篇文章主要介紹了js獲取select標(biāo)簽的值且兼容IE與firefox。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12使用 JavaScript 創(chuàng)建并下載文件(模擬點(diǎn)擊)
本文將介紹如何使用 JavaScript 創(chuàng)建文件,并自動(dòng)/手動(dòng)將文件下載,這在導(dǎo)出原始數(shù)據(jù)時(shí)會(huì)比較方便2019-10-10