SORU
12 HAZİRAN 2013, ÇARŞAMBA


Birden fazla <yerini&;'sadece <br> s br gt;

Nasıl JavaScript tespit etmek için kullanırım

<br>
<br>
<br>

bir hale gelir

<br>

?

Denedim:

jQuery('body').html().replace(/(\<br\>\r\n){3, }/g,"\n");

ama bu benim için geçerli değil.

CEVAP
12 HAZİRAN 2013, ÇARŞAMBA


CSS Çözüm

Eğer sayfada birden fazla etkisi <br> devre dışı bırakmak isterseniz, JavaScript kullanmadan CSS ile bunu yapabilirsiniz:

br   br { display: none; }

Ancak, bu yöntem, etiketler, böyle bir şey ile çalışırken idealdir

<div>Text</div><br /><br /><br />
<div>Text</div><br /><br /><br />
<div>Text</div><br /><br /><br />

Bu gibi durumlarda,:

Hello World<br />   <br />
Hello World<br />   <br />
Hello World<br />   <br />

Başarısız olurCSS metin düğümleri geçer gibi). Bunun yerine, bir JavaScript çözümü kullanın.

< / ^ hr .

JavaScript Çözüm

// It's better to wait for document ready instead of window.onload().
window.onload = function () {
    // Get all `br` tags, defined needed variables
    var br = document.getElementsByTagName('br'),
        l = br.length,
        i = 0,
        nextelem, elemname, include;

    // Loop through tags
    for (i; i < l - 1; i  ) {
        // This flag indentify we should hide the next element or not
        include = false;

        // Getting next element
        nextelem = br[i].nextSibling;

        // Getting element name
        elemname = nextelem.nodeName.toLowerCase();

        // If element name is `br`, set the flag as true.
        if (elemname == 'br') {
            include = true;
        }

        // If element name is `#text`, we face text node
        else if (elemname == '#text') {
            // If text node is only white space, we must pass it.
            // This is because of something like this: `<br />   <br />`
            if (! nextelem.data.replace(/\s /g, '').length) {
                nextelem = br[i 1];
                include = true;
            }
        }

        // If the element is flagged as true, hide it
        if (include) {
            nextelem.style.display = 'none';
        }
    }
};

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • InfoPuppet

    InfoPuppet

    15 Kasım 2011
  • LimeFire

    LimeFire

    2 ŞUBAT 2012
  • theKGB65

    theKGB65

    24 Aralık 2007