0

我正在使用来自 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)发布后,我清理了TextArea,$('myTextArea').value=''但它没有像预期的那样缩小,并且在实际必须恢复到原始大小时仍然有很多行。

我注意到 TextExpander ( http://yuilibrary.com/gallery/buildtag/text-expander/gallery-2010.03.23-17-54 ) 的代码中存在一个名为“ shrink_area”的方法,但我怎么能调用这个方法 $('myTextArea').shrink_area()呢? (我知道是错误的代码行,但我需要获得这样的东西)或者最好的方法是什么?

提前感谢您的建议和提示。

4

2 回答 2

0

Textarea 具有用于更改大小的rows和属性。cols尝试设置这些。

于 2010-08-23T08:59:55.550 回答
0

哦,我自己解决了这个问题。

因此,为了尝试调用插入类的内部方法(很高兴知道该怎么做,可能使用自定义命名空间),我编写了一个小函数来解决这个问题。

1)首先我min-height在类中设置CSS属性

2)清除TextArea后,我将其设置height为最小高度

下面的代码显示了这个功能

function shrinkTextArea(element) {
    // clear
    $(element).value ='';

    // shrink
    $(element).style.height = $(element).style.minHeight;
}
于 2010-08-23T09:50:49.793 回答