js網頁中彈出小視窗,頁面背景逐漸變為半透明

來源:互聯網
上載者:User
關鍵字 網頁製作 Ajax JavaScript

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "HTTP://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">


<html xmlns="HTTP://www.w3.org/1999/xhtml">


<head>


<meta HTTP-equiv="Content-Type" content="text/html; charset=utf-8" />


<title>無標題文檔</title>


<head>


<title>網頁中彈出小視窗,頁面背景逐漸變為半透明</title>


<style>


html,body{font-size:12px;margin:0px;height:100%;}


.mesWindow{border:#666 1px solid;background:#fff;}


.mesWindowTop{border-bottom:#eee 1px solid;margin-left:4px;padding:3px;font-weight:bold;text-align:left; font-size:12px;}


.mesWindowContent{margin:4px;font-size:12px;}


.mesWindow .close{height:15px;width:28px;border:none;cursor:pointer;text-decoration:underline;background:# fff}


</style>


<script>


var isIe=(document.all)?true:false;


//設置select的可見狀態


function setSelectState(state)


{


var objl=document.getElementsByTagName('select');


for(var i=0;i<objl.length;i++)


{


objl[i].style.visibility=state;


}


}


function mousePosition(ev)


{


if(ev.pageX || ev.pageY)


{


return {x:ev.pageX, y:ev.pageY};


}


return {


x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,y:ev.clientY + document.body.scrollTop - document.body.clientTop


};


}


//彈出方法


function showMessageBox(wTitle,content,pos,wWidth)


{


closeWindow();


var bWidth=parseInt(document.documentElement.scrollWidth);


var bHeight=parseInt(document.documentElement.scrollHeight);


if(isIe){


setSelectState('hidden');}


var back=document.createElement("div");


back.id="back";


var styleStr="top:0px;left:0px;position:absolute;background:#666;width:"+bWidth+"px;height:"+bHeight+"px;";


styleStr+=(isIe)?" filter:Alpha(opacity=0);":"opacity:0;";


back.style.cssText=styleStr;


document.body.appendChild(back);


showBackground(back,50);


var mesW=document.createElement("div");


mesW.id="mesWindow";


mesW.className="mesWindow";


mesW.innerHTML="<div class='mesWindowTop'><table width='100%' height='100%'><tr><td>"+ wTitle+"</td><td style='width:1px;' ><input type='button' onclick='closeWindow();' title='關閉視窗' class='close' value='關閉' /></td></tr ></table></div><div class='mesWindowContent' id='mesWindowContent'>"+content+"</div> <div class='mesWindowBottom'></div>";


styleStr="left:"+(((pos.x-wWidth)>0)?( pos.x-wWidth):pos.x)+"px;top:50px;position:absolute;width:"+wWidth+"px;";


mesW.style.cssText=styleStr;


document.body.appendChild(mesW);


}


//讓背景漸漸變暗


function showBackground(obj,endInt)


{


if(isIe)


{


obj.filters.Alpha.opacity+=1;


if(obj.filters.Alpha.opacity<endInt)


{


setTimeout(function(){showBackground(obj,endInt)},5);


}


}else{


var al=parseFloat(obj.style.opacity);al+=0.01;


obj.style.opacity=al;


if(al<(endInt/100))


{setTimeout(function(){showBackground(obj,endInt)},5);}


}


}


//關閉視窗


function closeWindow()


{


if(document.getElementById('back')!=null)


{


document.getElementById('back').parentNode.removeChild(document.getElementById('back'));


}


if(document.getElementById('mesWindow')!=null)


{


document.getElementById('mesWindow').parentNode.removeChild(document.getElementById('mesWindow'));


}


if(isIe){


setSelectState('');}


}


//測試彈出


function testMessageBox(ev)


{


var objPos = mousePosition(ev);


messContent="<div style='padding:20px 0 20px 0;text-align:center'>郵件內文</div>";


showMessageBox('請選擇以下地區',messContent,objPos,350);


}


</script>


</head>


<body>


<div style="text-align:left";><a href="#none" onclick="testMessageBox(event);" >快顯視窗</a></div>


</body>


</html>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.