原生js實現的點選彈出螢幕居中對話方塊效果

admin發表於2017-03-24

在實際應用中很多有這樣的效果,就是進行某些操作之後會出現一個居中視窗,並且帶有半透明背景效果,下面就通過程式碼例項介紹一下如何實現此功能,程式碼如下:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
html, body{
  height:100%;
  margin:0px;
  font-size:12px;
}
.mydiv{
  background-color:#ff6;
  border:1px solid #f90;
  text-align:center;
  line-height:40px;
  font-size:12px;
  font-weight:bold;
  z-index:99;
  width:300px;
  height:120px;
  left:50%;
  top:50%;
  margin-left:-150px;
  margin-top:-60px;
  position:fixed;
}
.bg{
  background-color:#ccc;
  width:100%;
  height:100%;
  left:0;
  top:0;
  filter:alpha(opacity=50);
  opacity:0.5;
  z-index:1;
  position:fixed;
} 
</style>
<script type="text/javascript"> 
function showDiv(){ 
  document.getElementById('popDiv').style.display='block'; 
  document.getElementById('bg').style.display='block'; 
}
function closeDiv(){ 
  document.getElementById('popDiv').style.display='none'; 
  document.getElementById('bg').style.display='none'; 
} 
window.onload=function(){
  var obt=document.getElementById("bt");
  var oclose=document.getElementById("close");
  obt.onclick=function(){
    showDiv();
  }
  oclose.onclick=function(){
    closeDiv()
  }
}
</script>
</head>
<body>
<div id="popDiv" class="mydiv" style="display:none;">
  <a href="#" id="close">關閉視窗</a>
</div>
<div id="bg" class="bg" style="display:none;"></div>
<div style="padding-top:20px;">
  <input type="button" id="bt" value="點選顯示"/>
</div>
</body>
</html>

相關文章