Bonjour,
A part JQuery, je programme en Action script avec lequel on peut faire par ex :
skin.theBody.oneBloc.theHeader.doSomething();
où skin contient l'instance theBody qui contient oneBloc qui contient theHeader qui contient et exécute la méthode doSomething().
Si oneBloc contient 2 autres instances similaires (theMain et theFoot par ex), il faut mieux faire,
var myArbo = skin.theBody.oneBloc;
myArbo.theHeader.doSomething();
myArbo.theMain.doSomething();
myArbo.theFoot.doSomething();
ainsi à l’exécution le ciblage de oneBloc ne se fait qu'une seul fois.
Je débute en JQuery/JS et ai cru (bêtement) pouvoir faire l'équivalent, en essayant par ex :
var myArbo=$("div#skin #theBody #oneBloc");
myArbo(".theHeader").doSomething(); // theHeader est une class css.
myArbo(".theMain").doSomething(); // etc...etc
ça ne marche pas comme vous le savez !
La question est...the question is,
Comment implémenter en JQuery, le principe décrit ci-dessus en AS ? C'est bien ce principe -à l'exécution- qui m’intéresse et non pas un code qui fonctionne autrement. Car j'ai déjà constaté par ex. que :
var aString="div#skin #theBody #oneBloc.";
$(aString+"theHeader").doSomething();
$(aString+"theMain").doSomething(); // etc
fonctionne très bien.
Merci et bonne journée.
// Déclaration d'une méthode jQuery
$.fn.doSomething = function(args){
return this.each(function(){
$(this).css('font-weight', 'bold');
});
}
var myArbo=$("div#skin #theBody #oneBloc");
// cherche '.theHeader' et '.theMain' dans myArbo
myArbo.find(".theHeader").doSomething(); // theHeader est une class css.
myArbo.find(".theMain").doSomething(); // etc...etc
Est-ce ça que tu cherchais ?