2016-10-05 43 views
0

我有一個div我想基於窗口大小調整jQuery的大小。我的代碼用於調整窗口大小的改變效果很好,但由於某種原因,它不適用於加載。我幾個星期前寫了原始代碼,所以在我看來這並不是什麼新鮮事,但我確實解決了這個問題。由於某種原因,它現在不能工作。我確實改變了一些東西,但沒有與劇本本身有關。不知道爲什麼現在不工作。我之前提出的解決方案對我來說似乎有點多餘,因爲它是調整元素大小的函數,然後調用頁面大小調整元素的大小。我在這方面相當新,所以這可能是非常重要的,但我無法弄清楚。我試圖把第一部分放在$(window).load()函數中,但是所做的只是在窗口大小調整部分上調整大小不起作用。Div無法調整頁面加載/刷新

總之,這裏的代碼:

var width = $(window).width(); 
function resizeBig() { 
    $("#topbarMainBlockContainer").css("width", "calc(100% - 420px)"); 
} 
function resizeSmall() { 
    $("#topbarMainBlockContainer").css("width", "100%"); 
} 
if (width < 700) { 
    resizeSmall(); 
} else { 
resizeBig(); 
} 
$(window).resize(function() { 
    width = $(window).width(); 
    if (width < 700) { 
     resizeSmall(); 
    } else { 
     resizeBig(); 
    } 
}); 

謝謝!

回答

0

你有沒有試過把你的代碼放在文檔中準備好?

$(document).ready(function() { 
// code goes here 
}); 

或者在正文結束標記之前加載腳本。

原因是解釋器在代碼執行時可能找不到id爲#topbarMainBlockContainer的元素,因爲頁面仍未完全加載。

+0

這樣做!謝謝塞爾吉奧! – mightknow

+0

真棒,我很高興它幫助。我在這個社區還很年輕,所以把我的答案標記爲正確的將幫助我堆積如山;) –