Il ne renvoie pas un seul élément mais un tableau en raison de getParents()
et éventuellement d'autres éléments marqués de manière similaire, Fx.Slide nécessite que vous lui passiez un seul élément.
voici au moins partiellement fonctionnel lors du passage du premier élément du tableau : http://www.jsfiddle.net/KFdnG/
cependant, cela est à mon avis inefficace et difficile à gérer si vous avez une longue liste d'éléments et avez besoin qu'un contenu particulier se déplie uniquement, vous souhaitez garder la recherche du contenu plus locale.
quelque chose comme ceci : http://www.jsfiddle.net/KFdnG/4/
// stockez une instance dans chaque div de contenu et définissez l'état initial sur masqué.
$$("div.widget_box_content_cont").each(function(el) {
el.store("fxslide", new Fx.Slide(el).hide());
});
$$('a.widget_minimize').addEvent('click', function(event) {
event.stop();
// ne peut pas utiliser this.getNext() en raison de l'emballage par Fx.Slide qui n'a pas l'instance.
this.getParent().getElement("div.widget_box_content_cont").retrieve("fxslide").toggle();
});
qui fonctionne sur la balise :
lien
un contenu
lien 2
un contenu 2
ceci est également mieux car vous ne créerez pas une nouvelle instance de la classe Fx.Slide à chaque clic mais vous ferez référence à celles déjà attachées à l'élément.