Je souhaite optimiser du Jquery. Après plusieurs test et visite de forum je n'arrive pas optimiser mon code.
// Partie Papa
$(".papa").click(function() {
$(".tab_content").hide(500)
var activeTab = $(this).find("a").attr("href");
$(activeTab).toggle(1000);
return false;
});
// Partie Maman
$(".maman").click(function() {
$(".tab_content").hide(500);
var activeTab = $(this).find("a").attr("href");
$(activeTab).toggle(1000);
return false;
});
J'ai mis une partie du code pour une meilleur visibilité.
Se qui fait appel à la même fonction j'aimerais le réécrire en une ligne.
Je suis passé par des variables, création d'une fonction pour faire un rappel dans celle-ci, je reste bloqué
J'ai enlever des fonctions Jquery qui ne sont pas les mêmes dans ".papa" et ".maman"
Si vous aurez sous la main comment faire, lien, explication et autre, je suis preneur.
Merci d'avance
Kitzumé
Regarder derrière soi et prendre peur est un signe de "iT's ALIVE !!!"_-_ objective -> black hole _-_
// Partie Papa et Maman
$(".papa,.maman").click(function() {
$(".tab_content").hide(500)
var activeTab = $(this).find("a").attr("href");
$(activeTab).toggle(1000);
return false;
});
function fonction() {
$(".tab_content").hide(500)
var activeTab = $(this).find("a").attr("href");
$(activeTab).toggle(1000);
return false;
}
// Partie Papa
$(".papa").click(fonction);
// Partie Maman
$(".maman").click(fonction);
function fonction() {
var activeTab = $(this).find("a").attr("href");
$(".tab_content").hide(500);
$(activeTab).toggle(1000);
return false;
}
$(".papa").click(fonction);
$(".maman").click(fonction);
Ce qui me gêne avec jQuery, c'est qu'à chaque appel de $(), un nouvel objet est crée. Donc ici à chaque clic, on a rien que 3 nouveaux objets en mémoire (et des objets jQuery ça fait un max de propriétés et de méthodes, donc c'est "gros") !!
function fonction() {
$(".tab_content").hide(500)
var activeTab = $(this).find("a").attr("href");
$(activeTab).toggle(1000);
return false;
}
// Partie Papa
$(".papa").click(fonction);
// Partie Maman
$(".maman").click(fonction);
Non?
Aussi, oui. Mais il dit que certaines parties du code diffèrent entre Papa et Maman... donc j'avais préféré ne pas prendre de "risques"
@LCaba : C'est en effet un des "problèmes" de jQuery.
Je dirait que ces moi qui a fait la faute de l'effacer
Regarder derrière soi et prendre peur est un signe de "iT's ALIVE !!!"_-_ objective -> black hole _-_
Optimiser du jquery
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.