usa on, è la soluzione più semplice, è il framework che controlla se la classe è presente o meno, tu non devi fare nulla, se non aggiungere e rimuovere la classe.
usa on, è la soluzione più semplice, è il framework che controlla se la classe è presente o meno, tu non devi fare nulla, se non aggiungere e rimuovere la classe.
bind("click") non vuol dire nulla
e comunque se vuoi riassociare lo stesso handler questo dev' essere una funzione esterna
il perche' lo capisci leggendo la documentazione di unbind
http://api.jquery.com/unbind/
quindi puoi fare una cosa del genereEven though the two functions are identical in content, they are created separately and so JavaScript is free to keep them as distinct function objects. To unbind a particular handler, we need a reference to that function and not a different one that happens to do the same thing.
codice:function tuaFunzione(){ $(this).unbind("click", tuaFunzione); $("div").animate({...}, 1000, function(){ $("a.link_nav_sx").bind("click", tuaFunzione); }) } $("a.link_nav_sx").bind('click',tuaFunzione)
mi faresti un esempio per io ho provato ma non va bene
$(".link_nav_dx").on("click", function(){
$(this).removeClass("link_nav_dx").addClass("link_ nav_dx_stop");
var tag=$(".selectGallery");
var count=tag.next().length;
$("a.link_nav_dx").removeClass("selectGallery");
var act = (count > 0) ? tag.next() : $(".gallery:first");
closedImage();
act.trigger("click");
});
});
ma non funge
Ultima modifica di techno; 22-01-2014 a 16:39
è possibbile che il problema sia proprio quel trigger("click")????
ti riporto quanto scritto da xinod:
quindi per esempio:o usi on su un elemento contenitore, come consigliato nel settare eventi delegati
$("body").on("click",".link_nav_dx", function(){ ecc...
ok finalmente sembra essere arrivato alla soluzione grazie a tutti raga siete stati davvero molto gentile, grazie ancora.
presumo di no, il trigger lo applichi ad un altro elemento della pagina, non capisco che cosa centra con la domanda iniziale.
edit: ho visto ora che hai risolto, bene! buon lavoro!
![]()