在屏幕中央设置弹出div

时间:2012-04-13 07:31:57

标签: javascript

我正在创建一个弹出式div。它的大小是521像素,高度是400像素。

现在我想将其设置为显示在屏幕或浏览器窗口的中心,而不管浏览器窗口的大小。

这是我的JavaScript代码:

<script type="text/javascript">
function show_update_profile()
   {
       document.getElementById('black_fade').style.display='block';
       var dw = document.getElementById('div_register').style.width;
       alert(dw);
       document.getElementById('div_register').style.left= ((window.innerWidth)-dw)/2;
   }
</script>

alert(dw);显示div宽度,但之后的行不起作用。

3 个答案:

答案 0 :(得分:1)

应该是:


//remove extra dot
document.getElementById('div_register').style.left= ((window.innerWidth)-dw)/2;

答案 1 :(得分:0)

dw是一个以px结尾的字符串;你首先要打电话给parseInt来获取号码。但是,使用JavaScript是一个很容易解决问题的方法,可以通过CSS轻松解决:

#div_register {
    left: 50%;
    top: 50%;
    margin: -200px -260px;
}

答案 2 :(得分:0)

alert(dw)的输出是什么?如果它包含一些测量单位(如“123px”),则需要在计算中使用它之前将其解析为int:

var dw = parseInt(document.getElementById('div_register').style.width);