Question

J'utilise YUI 3.1 Bibliothèque de Yahoo et aussi le TextExpander pour laisser un TextArea grandir quand un type d'utilisateur.

Le code ci-dessous initialiser le TextArea:

YUI({gallery: 'gallery-2010.03.23-17-54'
    }).use("node", 'gallery-text-expander', function(Y) {
    Y.one('#myTextArea').plug(Y.TextExpander);
});

Le travail est parfaitement mais maintenant j'ai une question dans ce scénario:

1) Le type d'utilisateur, le TextArea grandir pour de nombreuses lignes et le message est message au serveur.

2) Après le poste, je nettoyer le TextArea avec $('myTextArea').value='' mais il est rétrécit pas comme prévu et ont encore beaucoup de lignes lorsque dans le dos réel doit à la taille d'origine.

Je remarque à l'intérieur du code du TextExpander ( http://yuilibrary.com/gallery/buildtag/text-expander/gallery-2010.03.23-17-54 ) existe une méthode appelée « shrink_area » mais comment je peux appeler cette méthode $('myTextArea').shrink_area()? (je sais est une mauvaise ligne de code, mais je dois obtenir quelque chose comme ça) ou quelle est la meilleure façon?

Merci d'avance pour les suggestions et conseils.

Était-ce utile?

La solution 2

Eh bien je me résolu le problème.

Ainsi, au lieu d'essayer d'appeler la méthode interne de la classe branchée ( qui était agréable de savoir comment faire, en utilisant probablement une coutume espace de noms ) je l'ai écrit une petite fonction qui l'affaire.

1) Tout d'abord i de tout définir la propriété CSS min-height dans la classe

2) après effacer le TextArea i mis le height comme min-hauteur

le code ci-dessous montre la fonction que faire l'affaire

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

    // shrink
    $(element).style.height = $(element).style.minHeight;
}

Autres conseils

Textarea a des propriétés de rows et cols pour changer la taille. Essayez de régler ces derniers.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top