wangyi529 发表于 2013-2-8 01:05:39

Javascript提示窗口并实现模式窗口功能

提示窗口的界面:

http://dl.iteye.com/upload/attachment/385591/4143cb3f-fead-30cb-92c3-4917eb812e32.jpg


img{   border:0px; }#overlay{   position: absolute;   top: 0;   left: 0;   z-index: 99;   width: 100%;   height: 500px;   background-color: #000;   filter:alpha(opacity=70);   -moz-opacity: 0.6;   opacity: 0.6; }.floatDiv{   padding:0 0 0 0;         position:absolute;      width:300px;      margin:0 0 0 0;      z-index:100;   border:1px solid #DADADA;      background:#FFF; padding:1px; }.floatDiv .divTitle{   background:#E0E0E0 url('../images/dragForm/title_bg.gif');   background-position:top left;   background-repeat:repeat-x;   height:25px;   line-height:25px;   padding:0px 4px;   cursor:default; }.floatDiv .divContent{   padding:3px;      min-height:100px;   height:auto; cursor:default; }.floatDiv .divFoot{   background:#F0F0F0;      text-align:right;      padding:4px;   background:#E0E0E0 url('../images/dragForm/bottom_bg.gif');   background-position:top left;   background-repeat:repeat-x; }.floatDiv input.divButton{   background:#E0E0E0 url('../images/dragForm/button_bg.gif');   background-position:top left;   background-repeat:repeat-x;   border:1px solid #D1D3D2;   height:21px;   font-size:12px;   padding:2px 5px;   color:#626264; }

function $(_sId){return document.getElementById(_sId);}function moveDiv(event, _sId){    var oObj = $(_sId);      oObj.onmousemove = mousemove;    oObj.onmouseup = mouseup;    oObj.setCapture ? oObj.setCapture() : function(){};    oEvent = window.event ? window.event : event;    var dragData = {x : oEvent.clientX, y : oEvent.clientY};    var backData = {x : parseInt(oObj.style.top), y : parseInt(oObj.style.left)};       function mousemove()    {      var oEvent = window.event ? window.event : event;      var iLeft = oEvent.clientX - dragData["x"] + parseInt(oObj.style.left);      var iTop = oEvent.clientY - dragData["y"] + parseInt(oObj.style.top);      oObj.style.left = iLeft;      oObj.style.top = iTop;      dragData = {x: oEvent.clientX, y: oEvent.clientY};      }       function mouseup()    {      var oEvent = window.event ? window.event : event;      oObj.onmousemove = null;      oObj.onmouseup = null;      if(oEvent.clientX < 1 || oEvent.clientY < 1)      {            oObj.style.left = backData.y;            oObj.style.top = backData.x;      }            oObj.releaseCapture ? oObj.releaseCapture() : function(){};    }}function closeDiv(_sID){    var oObj = $(_sID);    var overlay = $("overlay");      if(overlay != null)    {      overlay.outerHTML = "";    }    oObj.style.display = "none";    }function showDiv(_sID,event){    var arrySize = getPageSize();    var oObj = $(_sID);    //创建一个DIV,改名为 overlay 这个是透明的层      var oDiv =document.createElement("div");    oDiv.id = "overlay";    document.body.appendChild(oDiv);    var overlay = $("overlay");    overlay.style.height = arrySize;    overlay.style.width = arrySize;    //alert(arrySize);      if(event == null)    {      if(oObj.style.left == "")      {            oObj.style.left = arrySize / 2 - 150 ;      }                if(oObj.style.top == "")      {            oObj.style.top =arrySize / 2;      }            }    else    {                var iEvent= window.event ? window.event : event;                oObj.style.left = arrySize / 2 - 150 ; // iEvent.clientX;      oObj.style.top = arrySize / 2 - 150 ;// iEvent.clientY;            }      oObj.style.display = "block";    overlay.style.display = "block";    overlay.style.zindex = oObj.style.zindex - 1;}//取得页面大小function getPageSize(){      var xScroll, yScroll;      if (window.innerHeight && window.scrollMaxY) {            xScroll = document.body.scrollWidth;      yScroll = window.innerHeight + window.scrollMaxY;    } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac      xScroll = document.body.scrollWidth;      yScroll = document.body.scrollHeight;    } else { // Explorer Macwould also work in Explorer 6 Strict, Mozilla and Safari      xScroll = document.body.offsetWidth;      yScroll = document.body.offsetHeight;    }      var windowWidth, windowHeight;    if (self.innerHeight) {    // all except Explorer      windowWidth = self.innerWidth;      windowHeight = self.innerHeight;    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode      windowWidth = document.documentElement.clientWidth;      windowHeight = document.documentElement.clientHeight;    } else if (document.body) { // other Explorers      windowWidth = document.body.clientWidth;      windowHeight = document.body.clientHeight;    }            // for small pages with total height less then height of the viewport    if(yScroll < windowHeight){      pageHeight = windowHeight;    } else {         pageHeight = yScroll;    }    // for small pages with total width less then width of the viewport    if(xScroll < windowWidth){            pageWidth = windowWidth;    } else {      pageWidth = xScroll;    }    arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)   return arrayPageSize;}
<!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>无标题 1</title><link href="styles/drag.css" rel="stylesheet" media="all" /><script type="text/javascript" src="scripts/drag.js"></script></head><body><div id="main">    <a href="javascript:showDiv('floatDiv');">show</a><input type="button"value="显示在这里" /></div><div id="floatDiv" class="floatDiv" style="display:none;">    <div class="divTitle" onmousedown="moveDiv(event,'floatDiv');">      <div style="float:left; width:250px;">提示窗口</div>      <div style="float:right;text-align:right; height:25px;" >            <a href="javascript:;" ><img src="images/dragform/ico_close.gif" onmouseout="this.src='images/dragform/ico_close.gif';" onmousemove="this.src='images/dragform/ico_close1.gif';" align="absmiddle" alt="关闭" /></a>      </div>            </div>    <div class="divContent" >      <p>以前自已也有一个博客,写了300多篇,后面工作以后就没有再写了。不知道是不是因为懒了,还是工作太忙的原因,呵呵 cnBlogs的博客圈子不错,所以我也插进来,希望能够认识更多业内的朋友。   </p>    </div>    <div class="divFoot">      <input type="button" class="divButton" value="确 定" /> <input type="button" class="divButton"value="取 消" />    </div></div></body></html>
页: [1]
查看完整版本: Javascript提示窗口并实现模式窗口功能