2011-04-02 49 views
0

不工作我使用以下代碼:jquery的.height(值)在IE

var winheight = $(window).height(); 
var headerHt = (0.11 * winheight); 
$(".header").height(headerHt) 

在每個window.resize事件並且在尺寸的document.ready .header(和其它元件)。這似乎在Chrome中正常工作,但在IE中,新的高度值並不適用於每個div。我在這裏有什麼明顯的錯誤嗎?動態調整不同窗口大小的最佳策略是什麼?

謝謝!

+0

可以依靠其他的CSS,或者實際上週圍的元素。 – Orbling 2011-04-02 13:20:06

+0

問題的確切位置,在計算或設置高度時;如果你在第二行之後做了alert(headerHt),你會得到正確的數字嗎? – jeroen 2011-04-02 13:32:30

回答

0

這在IE7 & 8適用於我..

$(document).ready(function() { 
    $(window).resize(function(){ 
     var winheight = $(window).height(); 
     var headerHt = (0.5 * winheight); 
     $(".header").height(headerHt); 
    }); 
}); 
+0

好的,謝謝。看起來這個高度是在代碼後面的某處設置的,因爲它對我不起作用......討厭IE! – aateeque 2011-04-02 14:53:16

+0

哈哈!你有任何MS濾波器的'.header',他們可以通過裁剪 – clairesuzy 2011-04-02 15:21:55

+0

沒錯與上漿干擾,我有不透明的過濾器運行!一切工作完美Chrome瀏覽器等但IE瀏覽器...男子! – aateeque 2011-04-02 16:07:48

0

你可以只使用CSS:

html, body { 
    height: 100%; 
} 
.header { 
    height: 11%; 
} 

順便說一句,我假設你有你自己.header總是可見,而且滾動區域將是唯一的內容部分。

+0

雖然它不是立即從這段代碼爲什麼我要當調整窗口大小來調整每個DIV明顯,這對於頁面中的某些元素不屬於100%的高度與其餘元件固定比率調整至關重要- 這就是爲什麼。雖然謝謝! – aateeque 2011-04-02 13:22:29