2016-02-12 24 views
0

我有這個模板我正在處理其中有幾個動態調整大小的div(他們複製其他div的高度):瀏覽器調整大小時的Javascript刷新+如何使它不那麼痛苦

$('#postThumbnailGhost').height($('.wp-post-image').height()); 
$('#post').css('min-height', $('.wp-post-image').height()); 

它工作得很好,直到我嘗試調整瀏覽器的大小。該腳本不會再被調用。

那麼,爲什麼不重新加載整個頁面,如果窗口調整大小?

正常,則:

$(window).resize(function(){location.reload();}); 

但是,當重新加載頁面,它會閃爍一些內容是動態生成了很多。

例如,我預先提到的兩個divs。我也有一個嵌入式twitter時間表,每次頁面加載時都會自動刷新。

所以問題是如何使重新加載無痛(沒有任何眨眼)。

順便說一下,我的jquery調用在頁腳中,對於我所有的腳本都是一樣的。

/!\有時當我重新加載在我的網站的頁面似乎JavaScript是不工作的,或者叫過晚,導致在模板上被搞砸了(也許是因爲它在頁腳?)

++ JSFiddle不具有動態div的調整大小問題。您可以無任何問題地調整渲染部分的大小。 JSFiddle of the project, without window load script

++ Link of the project live

Séane

回答

3

有沒有必要重裝當窗口大小,只是調整

function updateHeights() { 
    $('#postThumbnailGhost').height($('.wp-post-image').height()); 
    $('#post').css('min-height', $('.wp-post-image').height()); 
} 
updateHeights(); 
$(window).on("resize", updateHeights); 
+0

太棒了,謝謝。 –

1

爲什麼你會重新載入頁面,爲什麼不只是調整大小再次調用相同的代碼?

$(window).resize(function(){ 
    $('#postThumbnailGhost').height($('.wp-post-image').height()); 
    $('#post').css('min-height', $('.wp-post-image').height()); 
}); 

雖然,它可能會聰明地把該代碼放到一個函數,所以它不會重複,並調用函數需要時。

相關問題