點擊彈出居中帶有透明遮罩層視窗:本章節介紹一下如何點擊一個按鈕實現彈出一個居中視窗,並且此視窗帶有半透明的遮罩層效果,此效果在當下比較流行,當然還有更為複雜的實現方式,當然效果也更為絢麗,下麵介紹的代碼能夠簡單實現此效果。代碼如下: <!DOCTYPE html> <html> <head> <me
點擊彈出居中帶有透明遮罩層視窗:
本章節介紹一下如何點擊一個按鈕實現彈出一個居中視窗,並且此視窗帶有半透明的遮罩層效果,此效果在當下比較流行,當然還有更為複雜的實現方式,當然效果也更為絢麗,下麵介紹的代碼能夠簡單實現此效果。
代碼如下:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #fade { display:none; position:absolute; top:0%; left:0%; width:100%; height:100%; background-color:black; z-index:1001; -moz-opacity:0.8; opacity:.80; filter:alpha(opacity=80); } #light{ display:none; position:absolute; top:25%; left:25%; width:50%; height:50%; padding:16px; border:3px solid orange; background-color:white; z-index:1002; overflow:auto; } </style> <script type="text/javascript"> window.onload=function(){ var linkbt=document.getElementById("linkbt"); var light=document.getElementById('light'); var fade=document.getElementById('fade'); var closebt=document.getElementById("closebt"); linkbt.onclick=function(){ light.style.display='block'; fade.style.display='block'; } closebt.onclick=function(){ light.style.display='none'; fade.style.display='none'; } } </script> </head> <body> <a href="javascript:void(0)" id="linkbt"> 點擊這裡打開視窗</a> <div id="light"><a href="javascript:void(0)" id="closebt">關閉視窗</a></div> <div id="fade""></div> </body> </html>
以上代碼實現了我們的要求,下麵簡單介紹一下它的實現過程。
一.實現原理:
在預設狀態下,遮罩層和視窗都是隱藏不可見的,當點擊鏈接之後,能夠使視窗和遮罩層顯示,並且將遮罩層設置為半透明狀態。此兩個元素都採用絕對定位同時設置居中視窗的z-index屬性值大於遮罩層,這樣就可以使其覆蓋在遮罩層之上。當點擊關閉按鈕的時候,能夠將遮罩層和視窗隱藏,原理大致如此。
二.相關閱讀:
1.透明度設置可以參閱CSS如何設置div背景透明度且相容性良好一章節。
2.z-index可以參閱CSS的z-index屬性一章節。
3.onclick事件可以參閱javascript的onclick事件一章節。
原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=12001
更多內容可以參閱:http://www.softwhy.com/javascript/