1

デザインは こちら http://vvcap.net/db/OuxLO​​YioWmjIAavL5N9U.htp

これがデモです! http://designobvio.us/GoldGrid2/

IE8で実行する垂直方向および水平方向のjQueryスクリプトを取得しようとしています:

スクリプト コード

<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 で機能しない理由について何か考えはありますか?

4

1 に答える 1

2

高さと幅を数値として宣言して、数学が正しく機能することを確認したい場合があります。また、CSS を変更しているため、値は「px」を含む文字列である必要があります。

left: ((Number($(window).width()) - Number($('.padder').outerWidth()))/2)+'px',
top: ((Number($(window).height()) - Number($('.padder').outerHeight()))/2)+'px'

それらの線に沿って、おそらく 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'
    });

});
于 2012-04-09T22:01:31.440 に答える