用于动态扩展textarea的Prototype插件

时间:2009-02-04 12:22:52

标签: javascript prototypejs textarea dhtml

有没有人知道一个好的原型插件,它允许textareas根据它们中有多少文本自动扩展/收缩(例如,添加一条线,区域变大,一条线被移除,它会变小)? / p>

我需要一个可以免费使用的(例如某种形式的GPL类型许可)。

2 个答案:

答案 0 :(得分:2)

这使用Prototype:

<textarea id='t1' cols="40" rows="7" style='overflow:hidden;font-size:14px;font-family:"Times New Roman", Times, serif'></textarea>
<script type="text/javascript">
function activateResize(element) {
    Event.observe(element, 'keyup', function() {
      updateSize(element)
    });
    updateSize(element)
}

function updateSize(element) {
   //if scrollbars appear, make it bigger, unless it's bigger then the user's browser area.
    if(Element.getHeight(element)<$(element).scrollHeight&&Element.getHeight(element)<document.viewport.getHeight()) {
        $(element).style.height = $(element).getHeight()+15+'px'
        if(Element.getHeight(element)<$(element).scrollHeight) {
            window.setTimeout("updateSize('"+element+"')",5)
        }       
    }
}

activateResize('t1')
</script>

答案 1 :(得分:1)

这不是一个插件,但它不长:http://www.codelibary.com/JavaScript/Auto%20textarea%20resize.html

编辑:找到this SO帖子