我正在使用Yahoo的YUI 3.1库以及TextExpander让TextArea在用户输入时成长。
下面的代码初始化TextArea:
YUI({gallery: 'gallery-2010.03.23-17-54'
}).use("node", 'gallery-text-expander', function(Y) {
Y.one('#myTextArea').plug(Y.TextExpander);
});
它完美无缺,但现在我在这个场景中有一个问题:
1)用户类型,TextArea长大了许多行,然后邮件发布到服务器。
2)在帖子之后,我使用$('myTextArea').value=''
清理TextArea,但它没有按预期收缩,并且在真实时仍然有许多行必须回到原始大小。
我注意到TextExpander(http://yuilibrary.com/gallery/buildtag/text-expander/gallery-2010.03.23-17-54)的代码里面存在一个名为“shrink_area
”的方法,但是如何调用这个方法
$('myTextArea').shrink_area()
?
(我知道这是错误的代码行,但我需要获得类似的东西)或者最好的方法是什么?
提前感谢您的建议和提示。
答案 0 :(得分:0)
Textarea具有rows
和cols
属性,用于更改大小。尝试设置这些。
答案 1 :(得分:0)
哦,我自己解决了这个问题。
因此,尝试调用插入类的内部方法(很高兴知道如何操作,可能使用自定义命名空间),我编写了一个小功能来完成这个操作。 / p>
1)首先,我在类
中设置CSS属性min-height
2)清除TextArea后,我将height
设置为min-height
下面的代码显示了执行技巧的功能
function shrinkTextArea(element) {
// clear
$(element).value ='';
// shrink
$(element).style.height = $(element).style.minHeight;
}