recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Comment obtenir le nombre de lignes automatiquement renvoyées dans une zone de texte en JS?

Pour saisir du contenu dans une zone de texte, la valeur par défaut est une ligne. Lorsque trop de contenu est saisi, la ligne sera automatiquement renvoyée à la ligne et la hauteur augmentera ?

phpcn_u1582phpcn_u15822758 Il y a quelques jours1166

répondre à tous(4)je répondrai

  • 给我你的怀抱

    给我你的怀抱2017-05-16 13:46:17

    1, utilise l'ombre

    <p style="height:0; overflow:hidden;">
        <p class="shadow"></p>
    </p>
    <textarea style="overflow:hidden;"></textarea>
    
    <script>
        textarea.addEventListener('input', function(e) {
            shadow.innerHTML = this.value.replace(/\</g, '<').replace(/\>/g, '>');
            this.height = shadow.clientHeight + 'px';
        });
    </script>

    2, utilisez l'attribut contenteditable

    <p contenteditable="true">这里的高度会随内容自动扩展</p>

    3, si vous utilisez

    textarea.style.height = textarea.scrollHeight + 'px';

    La hauteur peut également être ajustée sous cette forme, mais la barre de défilement clignotera lors du changement de ligne, et la hauteur ne fera qu'augmenter mais pas diminuer, ce qui est la pire expérience d'écriture

    .

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-05-16 13:46:17

    Donnez à la zone de texte un événement oninput

    <textarea id="text"></textarea>
    document.getElementById('text').style.height = document.getElementById('text').scrollHeight + 'px'
    

    Similaire à ça

    répondre
    0
  • PHP中文网

    PHP中文网2017-05-16 13:46:17

    http://stackoverflow.com/ques...

    répondre
    0
  • 黄舟

    黄舟2017-05-16 13:46:17

    La hauteur totale de la zone de texte (utilisez element.height() de jQ, s'il s'agit de js natif, veuillez vérifier le BIF du manuel) / la hauteur de ligne que vous avez définie

    répondre
    0
  • Annulerrépondre