如何在html Textarea中设置最大行数以使溢出自动进行?

时间:2019-06-10 17:01:11

标签: html

大家好,只是想不出一种设置最大行数的方法。我想设置最大行数,以使元素在达到最大行数时自动溢出。

1 个答案:

答案 0 :(得分:0)

var observe;
if (window.attachEvent) {
    observe = function (element, event, handler) {
        element.attachEvent('on'+event, handler);
    };
}
else {
    observe = function (element, event, handler) {
        element.addEventListener(event, handler, false);
    };
}
function init () {
    var text = document.getElementById('text');
    function resize () {
        text.style.height = 'auto';
        text.style.height = text.scrollHeight+'px';
    }
    /* 0-timeout to get the already changed text */
    function delayedResize () {
        window.setTimeout(resize, 0);
    }
    observe(text, 'change',  resize);
    observe(text, 'cut',     delayedResize);
    observe(text, 'paste',   delayedResize);
    observe(text, 'drop',    delayedResize);
    observe(text, 'keydown', delayedResize);

    text.focus();
    text.select();
    resize();
}

使用此解决方案使用自动调整大小的文本找到了一个解决方案=> Creating a textarea with auto-resize

并且仅使用此行代码

function resize () {
  text.style.height = 'auto';
  text.style.height = text.scrollHeight+'px';
}

然后用具有最大高度的div包裹文本区域。

很抱歉出现菜鸟问题,谢谢您的建议。