js模擬實現alert()函式彈出警告視窗效果程式碼例項
大家都比較熟悉alert()函式的作用,可以彈出一個警告視窗,不過也有一個弱點,那就是這個彈出視窗的樣式是固定的,沒法修改,但是很多外觀要求比較高的網站對這個預設視窗自然不會滿意,為了風格的統一和美觀,模擬實現彈出視窗效果自然是必須的工作。
程式碼如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script type="text/javascript"> var alertObj=new Object(); var generalStyle={ zIndex:0, width:"200px", height:"100px", border:"thick solid #CCCCCC", background:"#FFFFFF", position:"absolute", top:"35%", left:"40%" } var txtStyle={ textAlign:"center" } var btnStyle={ position:"absolute", left:"40%", top:"70%", color:"#333333", fontWeight:"bold", outlineColor:"#3366FF", outlineStyle:"ridge", outlineWidth:"thin", innerHTML:"OK" } alertObj={ generalSet:generalStyle, txtSet:txtStyle, btnSet:btnStyle, isExist:false } alertObj.createComponent=function(){ var component=document.createElement(arguments[0]); var styles=arguments[1]; for(var property in styles){ if(styles[property]!=null){ try{ component.style[property]=styles[property]; } catch(err){ document.write(err.name+":"+property+"<br/>"); } } } return component; } alertObj.show=function(){ if(!this.isExist){ this.isExist=true; var bodyObj=document.body; bodyObj.style.zIndex=-1; bodyObj.style.background="#999999"; var divObj=this.createComponent("div",this.generalSet); var txtObj=this.createComponent("p",this.txtSet); txtObj.innerHTML = arguments[0]; var btnObj = this.createComponent("button", this.btnSet); btnObj.innerHTML = this.btnSet.innerHTML; btnObj.onclick = function() { bodyObj.style.zIndex=0; bodyObj.style.background=""; bodyObj.removeChild(divObj); if(alertObj.isExist){ alertObj.isExist = false; } } divObj.appendChild(txtObj); divObj.appendChild(btnObj); bodyObj.appendChild(divObj); } } function show(s){ alertObj.show(s); } window.onload=function(){ var obt=document.getElementById("bt"); obt.onclick=function(){ show("螞蟻部落"); } } </script> </head> <body> <input type="button" id="bt" value="檢視效果"/> </body> </html>
相關文章
- js模擬實現replaceAll()函式程式碼例項JS函式
- js模擬實現多型效果程式碼例項JS多型
- canvas模擬彈幕效果程式碼例項Canvas
- 關閉瀏覽器視窗彈出警告視窗程式碼例項瀏覽器
- javascript模擬實現ArrayList效果程式碼例項JavaScript
- jQuery實現的彈出垂直水平居中視窗效果程式碼例項jQuery
- js實現彈出灰色背景能夠拖動的視窗例項程式碼JS
- css模擬實現雙擊效果程式碼例項CSS
- 模擬實現連結title效果程式碼例項
- window.open()實現彈出視窗居中顯示程式碼例項
- 可以限定拖動範圍的彈出視窗效果程式碼例項
- 模擬實現文字框游標效果程式碼例項
- javascript模擬實現滾動條效果程式碼例項JavaScript
- js實現的警告框例項程式碼JS
- js模擬實現hashCode()方法程式碼例項JS
- javascript模擬實現連結的title效果例項程式碼JavaScript
- javascript自帶的彈出輸出視窗程式碼例項JavaScript
- js實現的點選彈出確認視窗程式碼JS
- 點選連結<a>彈出確認視窗程式碼例項
- 關閉瀏覽器視窗彈出提示程式碼例項瀏覽器
- 移動端點選彈出提示視窗程式碼例項
- js模擬實現StringBuffer類功能程式碼例項JS
- js模擬實現名稱空間功能程式碼例項JS
- js模擬實現select下拉選單程式碼例項JS
- 模擬發放紅包效果程式碼例項
- canvas實現的彈力小球效果程式碼例項Canvas
- css3和js模擬翻頁效果程式碼例項CSSS3JS
- js實現的div元素尺寸彈性縮放效果程式碼例項JS
- 用函式控制彈出視窗函式
- js漸變彈出視窗和關閉視窗效果JS
- 模擬實現Object.is()方法程式碼例項Object
- javascript模擬實現toAarray()方法程式碼例項JavaScript
- 彈出視窗程式碼
- js實現刮刮樂抽獎效果程式碼例項JS
- js實現的垂直選項卡效果程式碼例項JS
- css模擬實現雙擊事件程式碼例項CSS事件
- js實現在彈出視窗中重新整理主視窗JS
- JavaScript+DIV製作彈出警告視窗效果JavaScript