读书人

弹出层居中,该怎么解决

发布时间: 2012-04-26 14:01:31 作者: rapoo

弹出层居中

JScript code
<script type="text/javascript">    var wWidth=100;    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=\"image\" src=\"images/cancel.png\" title='关闭窗口' class='close' onclick='closeWindow();'/> </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:"+(300)+"px;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.1;                  obj.style.opacity=al;                  if(al <(endInt/1))  {                    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='text-align:center;'></div>";          showMessageBox('<%=keFangWrite %>',messContent,objPos,500);       }         </script>



怎么让它居中啊

[解决办法]
用百分比
[解决办法]
http://www.cnblogs.com/ZHUYIN/archive/2011/10/31/2229823.html参考
------解决方案--------------------


document.getElementById("Javascript.Div1").style.top=(document.documentElement.scrollTop+
(document.documentElement.clientHeight-document.getElementById("Javascript.Div1").offsetHeight)/2)+"px";
document.getElementById("Javascript.Div1").style.left=(document.documentElement.scrollLeft+
(document.documentElement.clientWidth-document.getElementById("Javascript.Div1").offsetWidth)/2)+"px";

探讨

http://www.cnblogs.com/ZHUYIN/archive/2011/10/31/2229823.html参考

[解决办法]
也就是设置层的
left=(浏览器可见区域的宽度-层的宽度)/2
top = (浏览器可见区域高度+滚动条滚动高度-层高度)/2
[解决办法]
offset
[解决办法]
探讨
也就是设置层的
left=(浏览器可见区域的宽度-层的宽度)/2
top = (浏览器可见区域高度+滚动条滚动高度-层高度)/2

[解决办法]
JScript code
 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 divId = document.getElementById('你要弹出层的ID');
divId.style.left=(document.body.clientWidth-divId.clientWidth-200)/2;
divId.style.top=(document.body.clientHeight-divId.clientHeight-200)/2;
divId.style.display = "block";

读书人网 >asp.net

热点推荐