文本框高度自适应

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>文本框高度自适应</title>
    <style type="text/css">
        #shadow, #text { font: 12px/16px Arial; width: 200px; overflow: hidden; height: 16px; }
        #shadow { position: absolute; border-width: 0px; padding: 0px; visibility: hidden; }
        #text { resize: none; }
    </style>
    <script type="text/javascript">
       
        window.onload = function () {
            var text = document.getElementById("text"); //用户看到的文本框
            var shadow = document.getElementById("shadow"); //隐藏的文本框

            text.oninput = //非IE的
            text.onpropertychange = //IE的
            onchange;
            
            function onchange() {
                shadow.value = text.value;
                setHeight();
                setTimeout(setHeight, 0); //针对IE 6/7/8的延迟, 否则有时会有一个字符的出入
                function setHeight() { text.style.height = shadow.scrollHeight + "px"; }
            }
        };
    </script>
</head>
<body>
    <textarea id="text"></textarea>
    <textarea id="shadow"></textarea>
</body>
</html>
posted @ 2012-04-27 10:43  赵小磊  阅读(654)  评论(0编辑  收藏  举报
回到头部