详见文件 <_script type="text/java_script" language="java_script">/*** 文本框根据输入内容自适应高度 * @param{HTMLElement}输入框元素 * @param{Number}设置光标与输入框保持的距离(默认0) * @param{Number}设置最大高度(可选) */var autoTextarea = function(elem, extra, maxHeight) {extra = extra || 0;var isFirefox = !!document.getBoxObjectFor|| "mozInnerScreenX" in window, isOpera = !!window.opera&& !!window.o *** ng().indexOf("Opera"), addEvent = function(type, callback) {elem.addEventListener ? elem.addEventListener(type, callback, false) : elem.attachEvent("on" + type, callback);}, getStyle = elem.currentStyle ? function(name) {var val = elem.currentStyle[name];if (name === "height" && val.search(/px/i) !== 1) {var rect = elem.getBoundingClientRect();return rect.bottom - rect.top- parseFloat(getStyle("paddingTop"))- parseFloat(getStyle("paddingBottom")) + * + "px";};return val;} : function(name) {return getComputedStyle(elem, null)[name];}, minHeight = parseFloat(getStyle("height"));elem. *** = "none";var change = function() {var scrollTop, height, padding = 0, style = elem.style;if (elem._length === elem.value.length)return;elem._length = elem.value.length;if (!isFirefox && !isOpera) {padding = parseInt(getStyle("paddingTop"))+ parseInt(getStyle("paddingBottom"));};scrollTop = documen *** Top|| documen *** Top;elem. *** = minHeight + "px";if *** Height > minHeight) {if (maxHeight && elem.scrollHeight > maxHeight) {height = maxHeight - padding; *** owY = "auto";} else {height = elem.scrollHeight - padding; *** owY = "hidden";}; *** = height + extra + * + "px";scrollTop += parseInt *** ) - elem.currHeight;documen *** Top = scrollTop;documen *** Top = scrollTop;elem.currHeight = parseInt *** );};};addEvent("propertychange", change);addEvent("input", change);addEvent("focus", change);change();};var zgtj = document.getElementById("zgtj");autoTextarea(zgtj); | |