2011-08-31 18 views
5

टिटल वास्तव में यह सब कहता है।jQuery - पता लगाएं कि तत्व ऊंचाई खिड़की की ऊंचाई से बड़ी है और इसके बारे में कुछ करें

असल में मैं अगर यह div के heightwindowheight तुलना में बड़ा है का पता लगाने और इसके बारे में कुछ करना चाहता हूँ ..

मैंने यह किया है, लेकिन मैं यह काम करने के लिए http://jsfiddle.net/dhkCa/3 क्यों अभ्यस्त यह काम प्राप्त नहीं कर सकते?

संपादित करें: सीएसएस कोड में थोड़ी सी त्रुटि तय की गई। Jsfiddle लिंक अद्यतन किया गया।

+0

यदि आप 2 मानों को अलर्ट करते हैं, तो आप देखेंगे कि दस्तावेज़ ऊंचाई div ऊंचाई से 20px अधिक है [उदाहरण यहां] (http://jsfiddle.net/dhkCa/8/) –

उत्तर

17

document के भीतर सभी तत्व शामिल हैं, और इसकी ऊंचाई उन सभी तत्वों की ऊंचाई (सभी display:block तत्वों के साथ-साथ मार्जिन और पैडिंग) की ऊंचाई का योग है; इसलिए दस्तावेज़ में से कोई भी तत्व तत्व लंबा नहीं हो सकता है।

var div = $("div").height(); 
var win = $(window).height(); 

if (div > win) { 
    $("div").addClass('red'); 
} 

JS Fiddle demo: क्या आपको बस इतना करना window की ऊंचाई, नहीं दस्तावेज़ की तुलना है।

+0

दाएं .. jquery api भी स्पष्ट रूप से कहा गया है .. एक बार फिर मैं जो पढ़ता हूं उसे समझने में असफल रहा। धन्यवाद (+1) और जब मैं कर सकता हूं स्वीकार कर रहा हूं। – Joonas

+0

आपका स्वागत है; मुझे मदद मिली है! = D –

0

उस तत्व के लिए जिसमें स्क्रॉल ऊंचाई है जो दस्तावेज़ की स्क्रॉल ऊंचाई से अलग है, आप element.getBoundingClientRect().height(Docs) का उपयोग कर सकते हैं।