2013-07-04 84 views
5

我試圖在頁面加載時手動觸發$(window).resize()方法。 我創建了一個功能頁面

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

在垂直和水平居中div元素此功能後,我打電話

$(window).resize(); 

手動觸發調整大小()事件。

不幸的是它不起作用。在重新加載div不居中符合預期。 如果我調整瀏覽器窗口div元素居中,它只在頁面加載時不被觸發。

有什麼辦法解決這個問題嗎? 我使用Chrome 27.0.1453.116米(最新版本ATM)和JQuery 1.10.2

+4

被包裹在文件準備好代碼? – r043v

+1

啊,那是問題所在。很新的JavaScript ^^謝謝r043v – TorbenJ

回答

2

您需要使用trigger$(window).trigger('resize');

+7

這不是必需的,但風格的問題。文檔非常明確 - 如果沒有參數使用,'resize()'是'.trigger('resize')'的快捷方式。 – nrodic

+1

爲什麼這是最好的答案? – Kad

+0

@Kad,因爲它是唯一一個......開玩笑... –