Javascript 如何修复手风琴内的文本区域自动增长

Javascript 如何修复手风琴内的文本区域自动增长,javascript,jquery,jquery-mobile,textarea,autogrow,Javascript,Jquery,Jquery Mobile,Textarea,Autogrow,说明 使用股票jquery移动期权 textarea自动增长脚本在以下情况下不会自动增长: a) 字段集内的一致性和 b) 在页面加载时包含内容 断开的代码 <div data-role="fieldcontain"> <label for="ta2">Broken:</label> <textarea id="ta2" name="ta2" cols="40" rows="4"> Lorem ipsum dolor

说明

使用股票jquery移动期权

textarea自动增长脚本在以下情况下不会自动增长:

a) 字段集内的一致性

b) 在页面加载时包含内容

断开的代码

    <div data-role="fieldcontain">
      <label for="ta2">Broken:</label>
      <textarea id="ta2" name="ta2" cols="40" rows="4">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam mi augue, tristique non orci non, interdum ultrices enim. Donec est erat, eleifend euismod tortor vel, feugiat egestas magna.
      </textarea>
    </div>

破碎的:
Lorem ipsum dolor sit amet,是一位杰出的献身者。我是奥古斯,我是奥古斯,我是奥古斯,我是奥古斯。请不要这样做,因为你是一个大家庭的成员。

查看问题:

高度未调整,因为在创建时,textarea不可见(因为它位于折叠的容器中),因此无法应用依赖于可见高度的高度计算

解决方案是在文本区域可见时手动调用高度调整。我用叉子演示解决方案。相关更改是侦听容器的展开事件(此时textarea可见),然后通过模拟按键触发高度计算:

$('fieldset').on("collapsibleexpand", function(event, ui) { //Listen for the event
    $(this).find("textarea").keyup(); //simulate key press
});

非常感谢马库斯。但我的妻子不会再支持我了。