2010-07-08 6 views
0

La plupart des plugins jQuery ont des options comme celui-ci par exemple (cycle):plugins jQuery - accédant à l'élément des options

$("ul").cycle({ 
    fx: 'fade', 
    startingSlide: 1, 
    speed: 500, 
    pause: true}); 

Le plugin fera son truc sur tous les éléments avec la classe/ID que vous spécifiez, dans ce cas tous les éléments <UL>. Comment puis-je accéder à ces éléments enfants <UL> dans l'une de ces options.

Par exemple startingSlide accepte uniquement les nombres, et je veux passer une fonction qui renvoie un nombre, au lieu d'un simple nombre.

Le problème est que, dans cette fonction, je ne sais pas comment accéder à la actuelle<UL> le plugin travaille avec (pas tous ELU)

+0

Vous voulez donc modifier le plugin de cycle pour permettre à 'startingSlide' d'être une fonction de rappel? –

+0

Oui, quelque chose comme ça je suppose :) Dois-je modifier le code des plugins? Cela va augmenter les problèmes avec maintainace (mises à jour) – Alex

+0

Pourquoi avez-vous besoin de transmettre une fonction? Puisque c'est une variable de départ, pourquoi ne pas simplement appeler cette fonction, par ex. 'startingSlide: getStartNumber()' où 'function getStartNumber()' renvoie l'int que vous voulez? Ou, est-ce que l'option d'exemple n'est pas vraiment celle que vous recherchez, si c'est le cas, pouvez-vous clarifier un peu? –

Répondre

0

Le plugin ne fonctionne que sur l'ensemble emballé que vous spécifiez par exemple $("ul"), si vous voulez que quelque chose arrive aux enfants de ul, vous devrez spécifier à la place $("ul > li"). Ainsi, le plugin fera son travail sur l'ensemble/sélecteur enveloppé que vous spécifiez.