2014-01-23 160 views
0

我有一個彈出窗口我試圖動態調整大小並保持水平居中。由於彈出窗口需要在移動和桌面環境下工作,爲了處理重新調整窗口大小並刪除窗口寬度(如果窗口寬度小於彈出窗口的max-width),我寫了一些jQuery。這一切都按照它應該的方式工作,除了每當我緩慢調整窗口大小時,彈出菜單默認爲擁抱左邊而不是保持居中。這是我的代碼,任何幫助將不勝感激,因爲CSS仍然在我頭上。Jquery窗口調整大小錯誤

的jQuery:

$(window).resize(function(){ 
    var w = $('.body').width(); 
    if (w > 1000) { 
     $('.popup_modal').css({"left": (w - 1000)/2 + "px"}); 
    } else if (w < 1000) { 
     $('.popup_modal').css({"left": "0px"}); 
    } 
}); 

CSS:

.popup_modal { 
    display: none; 
    width: 100%; 
    max-width: 1000px; 
    float: left; 
    background: #fff; 
    border: 1px solid #d4d4d4; 
    border-radius: 3px; 
    box-shadow: 0px 0px 5px #ccc; 
    position: relative; 
    margin-top: 20px; 
    padding: 20px; 
} 

謝謝!

+2

你真的對你的身體稱爲類'.body'?或者是一個錯字? – Chad

+1

我的第一個想法是爲什麼你使用float:left? – Cam

+0

@Chad這是一個錯字,從窗口大小調整代碼的另一個答案得到了。將它改爲$(window).width似乎有訣竅。謝謝! – iamthereplicant

回答

0

更改此代碼:

$(window).resize(function(){ 
    var w = $(window).width; 
    if (w > 1000){ 
     $('.popup_modal').css({"left" : (w-1000)/2 + "px"}); 
    } else if (w < 1000){ 
     $('.popup_modal').css({"left" : "0px"}); 
    } 
}); 
+0

已經知道了,但有一些功勞:) – iamthereplicant

+0

哦,很好的:)我很高興你發現這一點 –