我有一段代码可以更改 DIV 的内容以匹配 textarea 的内容,然后将 DIV 中的高度更改应用于 textarea 元素。
<textarea class="fieldEdit" data-fieldid="1_description"></textarea>
<div class="hiddenDiv" data-fieldid="1_description"></div>
<Script>
$('.fieldEdit').live('keyup', function(){growTextArea(this)});
function growTextArea(parameter) {
// works
$('div').find("[data-fieldid='1_description']").text($(parameter).val());
$("[data-fieldid='1_description']").text($(parameter).val());
// No Works
height = $('div').find("[data-fieldid='1_description']").outerHeight();
height = $("[data-fieldid='1_description']").outerHeight();
alert(height);
// Works
heightDiv = $('.hiddenDiv').outerHeight();
alert(heightDiv);
$(parameter).css('height', $('div').find("[data-fieldid='1_description']").outerHeight());
}
</script>
DIV 内容正确更改,因此搜索功能正常工作,但搜索功能始终返回 DIV 的原始高度。该函数由 textarea 中的 onKeyUp 调用。如果将 .find 换成 .hiddenDiv,则高度变化会正确反映。