2011-12-21 11 views
5

क्या यह जांचने का कोई तरीका है कि div उपयोगकर्ता के लिए पूरी तरह से दृश्यमान है या नहीं? मेरा मतलब है कि स्क्रॉल बार स्थित है ताकि पूरे div व्यूपोर्ट के अंदर फिट बैठे।जांचें कि पूरे div उपयोगकर्ता के लिए देखने योग्य है

उत्तर

8

यह ठीक है कि इस के लिए बनाया गया था:

$(window).scroll(function() { 
    var top = $(window).scrollTop(); 
    var bottom = top + $(window).height(); 
    var dtop = $('#mydiv').position().top; 
    var dbottom = dtop + $('#mydiv').height(); 

    if (dtop>=top && dbottom<=bottom) { 
     alert('okay!'); 
    } 
}); 

http://jsfiddle.net/mblase75/dMwMb/: http://www.appelsiini.net/projects/viewport

+0

धन्यवाद, यह बहुत अच्छा लग रहा है। – keepwalking

+0

वाह यह बहुत अच्छा है। यहां मैं इस प्रश्न के लिए अपना खुद का रोलिंग कर रहा था, जब यह पहले से मौजूद है। +1 –

+0

हम्म ... क्या मैं यह भी देख सकता हूं कि यह पूरी तरह से व्यूपोर्ट में है या नहीं? न केवल एक छोटा सा हिस्सा? – keepwalking

2

आप स्क्रॉलबार और प्रश्न में div के लिए पदों की जाँच करने, और उन्हें scroll ईवेंट हैंडलर में तुलना की जरूरत है