2013-02-07 20 views
6

मैं ओवरफ्लो छिपाने के लिए सेट होने पर स्क्रीन पर प्रदर्शित सभी सूची आइटमों को कैसे गिन सकता हूं?स्क्रीन पर दिखाए गए सूची सूची आइटम और ओवरफ़्लो

नीचे दिए गए कोड का उपयोग करके सभी आइटमों को भी गिना जाता है, यहां तक ​​कि जो लोग बहते हैं।

var count = $("#myList ul li:visible").length; 

फिडल:

http://jsfiddle.net/kPAwX/2/

+2

': visible' तत्वों कि' नहीं है प्रदर्शन का चयन करता है: none' संपत्ति, आप 'offset' या' position' तरह तरीकों का उपयोग और तत्वों फ़िल्टर करना चाहिए। – undefined

+0

क्या आप मुझे एक उदाहरण दे सकते हैं? – agassi0430

+1

क्या आप http://jsfiddle.net पर डेमो प्रदान कर सकते हैं? – undefined

उत्तर

5
var maxh = $("#myList ul").height(); 
$("#myList ul li").filter(function() { 
    return $(this).position().top + $(this).height() < maxh; 
}); 

यह li रों कि पूरी तरह से दिखाई दे रहे हैं के सभी का चयन करेंगे। यदि li आंशिक रूप से काट दिया गया है, तो इसे फ़िल्टर किया जाएगा।

यदि आप फ़िल्टर किए जाने के लिए आंशिक रूप से li एस को भी आंशिक रूप से दृश्यमान करना चाहते हैं, तो बस ऊंचाई के अतिरिक्त को हटा दें (या अपनी इच्छानुसार किसी भी तरह का कट ऑफ करें)।

http://jsfiddle.net/ExplosionPIlls/z6GXA/

संबंधित मुद्दे