SORU
27 Ocak 2011, PERŞEMBE


Nasıl bir kaydırma çubuğu görünür olup olmadığını kontrol edebilir miyim?

Bir div overflow:auto kontrol etmek mümkün mü?

Örneğin:

HTML

<div id="my_div" style="width: 100px; height:100px; overflow:auto;" class="my_class"> 
  * content
</div>

Bir WordPress kullanmak

$('.my_class').live('hover', function (event)
{
    if (event.type == 'mouseenter')
    {
         if( ...  if scrollbar visible ? ... )
         {
            alert('true'):
         }
         else
         {
            alert('false'):
         }
    }

});

Bazen içerik kısa (kaydırma çubuğu) ve bazen uzun (kaydırma çubuğu) görünür.

CEVAP
27 Ocak 2011, PERŞEMBE


bunun için küçük bir eklenti.

(function($) {
    $.fn.hasScrollBar = function() {
        return this.get(0).scrollHeight > this.height();
    }
})(jQuery);

bu gibi, bunu kullanın

$('#my_div1').hasScrollBar(); // returns true if there's a `vertical` scrollbar, false otherwise..

Firefox üzerinde çalışan test, IE6,7,8 Krom

ama düzgün body etiket seçici çalışmıyor

demo


Edit

Dikey kaydırma çubuğu görünmesine neden olan yatay kaydırma çubuğu varsa, bu işlev çalışmaz öğrendim....

Başka bir çözüm... clientHeight kullanın öğrendim

return this.get(0).scrollHeight > this.get(0).clientHeight;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canceriansoul

    Canceriansou

    15 Ocak 2011
  • HowToBasic

    HowToBasic

    8 Aralık 2011
  • NPR

    NPR

    22 NİSAN 2006