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

  • Curso Online Gratuito

    Curso Online

    4 Aralık 2011
  • gadgetgal38

    gadgetgal38

    9 HAZİRAN 2009
  • MrMimoB

    MrMimoB

    11 NİSAN 2011