2012-04-09 64 views
1
工作

继承人的设计 http://vvcap.net/db/OuxLOYioWmjIAavL5N9U.htpjQuery的横向和纵向定位脚本不是IE8

这里有一个演示! http://designobvio.us/GoldGrid2/

我试图得到一个垂直和水平的jQuery脚本来运行IE8:

脚本代码

<script type="text/javascript"> 

    $(document).ready(function(){ 

    $(window).resize(function(){ 

     $('.padder').css({ 
     position:'absolute', 
     left: ($(window).width() 
     - $('.padder').outerWidth())/2, 
     top: ($(window).height() 
     - $('.padder').outerHeight())/2 
     }); 

    }); 

    // To initially run the function: 
    $(window).resize(); 

    }); 

</script> 

为什么这个脚本在心不是IE8工作的任何想法?

+0

你方的问题确实应该是另一个问题... :) – 2012-04-09 21:41:22

+0

foine! :(我删除 – 2012-04-09 21:45:36

回答

2

您可能希望让你一定的数学可以正常工作,也因为要更改值必须是包含“PX”

left: ((Number($(window).width()) - Number($('.padder').outerWidth()))/2)+'px', 
top: ((Number($(window).height()) - Number($('.padder').outerHeight()))/2)+'px' 
字符串的CSS申报的高度和宽度的数字

沿着这些线的东西,我可能会在CSS之前设置值。

var leftVal = Number($(window).width()) - Number($('.padder').outerWidth())/2; 
var topVal = Number($(window).height()) - Number($('.padder').outerHeight()))/2; 

然后:

left: leftVal+'px', 
top: topVal+'px' 

全功能:

$(window).resize(function(){ 

    var leftVal = Number($(window).width()) - Number($('.padder').outerWidth())/2; 
    var topVal = Number($(window).height()) - Number($('.padder').outerHeight()))/2; 

    $('.padder').css({ 
     position:'absolute', 
     left: leftVal+'px', 
     top: topVal+'px' 
    }); 

}); 
+0

对不起,我从其他地方采取了这个脚本。我的jquery技能是可怕的。它说数字我应该申报一个真正的数字?我把这个代码,它出错了?如果我确实声明一个数字应该是什么是? – 2012-04-09 22:09:31

+0

我更新了代码http://www.designobvio.us/GoldGrid2/ – 2012-04-09 22:10:31

+0

我在那里做了一个改变,可能会有所帮助。我认为这实际上是第二件事,因为你正在改变顶部和左侧位置在CSS中,你必须在值后包含'px',例如“120px”而不是“120” – 2012-04-09 22:12:25