2013-09-30 54 views
2

我有一個問題,jQuery錯誤地計算我正在處理的頁面底部的空間。這可能是由於頁面上隱藏的div層造成的。

有沒有一種方法,jQuery可以計算頁面的'真實'高度,如瀏覽器中可見?這裏是我到目前爲止的代碼:

var doc_height = $(document).height(); 
var footerHeight = $('.footer-wrapper').height(); 
var main_body_height = doc_height - footerHeight; 
$("div.wrapper-holder").height(main_body_height); 

這確切的代碼似乎對網站的其他頁面工作正常,沒有人知道什麼可以在這個網頁上導致的嗎?

這裏的問題的截圖:

Screenshot

的鏈接真實頁是在這裏:http://www.upreach.org.uk/undergraduates/partners.php

的任何幫助,你可以給許多感謝...

+1

您正在尋找文檔的滾動高度或視口的高度嗎? – Ryan

+0

我認爲整個文檔的滾動高度減去隱藏的div層。 – user2761030

+0

呵呵,如果你調整窗口大小,它就會起作用。 – Ryan

回答

4

嘗試在$(window).on('load')上運行您的代碼(再次) - 您的計算可能會因爲圖像在$(document).ready()被觸發時未加載而沮喪。

更好的解決方案 - 不需要您等待的方法是爲每個圖像添加height屬性。 (目前您只設置了width屬性。)這將具有相同的結果:jQuery將能夠精確計算整個文檔的高度,無論圖像是否加載。

+0

感謝這@Blazemonger只是爲了檢查......我應該在'$(window).on('load')'中包裝我的代碼並從那裏嘗試? – user2761030

+0

這不是最好的解決方案,但它將是更快的變化。 – Blazemonger

相關問題