SORU
27 EYLÜL 2008, CUMARTESİ


Bir HTML öğesi belirlemek'un içerik taşıyor

Eğer bir HTML öğesi içeriği taştı olup olmadığını kontrol edin (kaydırma çubukları ne olursa olsun) için JavaScript kullanabilir miyim? Örneğin, küçük, sabit boyutlu ile uzun bir div, taşma özelliği öğesi görünür ve kaydırma çubukları ayarlayın.

CEVAP
27 EYLÜL 2008, CUMARTESİ


Normalde, bu tespit etmek için scroll[Height|Width] client[Height|Width] karşılaştırabilirsiniz... ama değerleri taşma görünür olduğunda aynı olacaktır. Bu yüzden, algılama rutin bunun için hesap gerekir:

// Determines if the passed element is overflowing its bounds,
// either vertically or horizontally.
// Will temporarily modify the "overflow" style to detect this
// if necessary.
function checkOverflow(el)
{
   var curOverflow = el.style.overflow;

   if ( !curOverflow || curOverflow === "visible" )
      el.style.overflow = "hidden";

   var isOverflowing = el.clientWidth < el.scrollWidth 
      || el.clientHeight < el.scrollHeight;

   el.style.overflow = curOverflow;

   return isOverflowing;
}

FF3, FF40 test.0.2, IE6, Chrome 0.2.149.30.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AceHoodVEVO

    AceHoodVEVO

    12 Mayıs 2009
  • disneychannel

    disneychanne

    19 ŞUBAT 2006
  • ParryGripp

    ParryGripp

    12 AĞUSTOS 2006