Ich habe ein merkwürdiges Problem, ich habe Code, der Inhalt über Ajax zieht und dann Fancybox (2) an bestimmte Elemente bindet. Das Problem ist, dass wenn ich diese Seite "aktualisiere", ich die gleiche Funktion anrufe, die Fancybox erneut zieht und bindet.
Mein normaler Ansatz, der sich bis zu Fancybox 2 entwickelt hat, besteht darin, die Elemente zu lösen und erneut zu binden. Dies scheint jedoch nicht mit FB2 zu funktionieren.
Ich habe Folgendes versucht:
%Vor%Ich habe Folgendes in der Quelldatei bemerkt, was nützlich sein könnte (Startzeile 652):
%Vor%Wenn hier jemand helfen könnte, wäre das sehr zu begrüßen.
Vielen Dank im Voraus. Nick
Wenn Sie das Attribut %code% einfügen, können Sie die Handler von Ihren Elementen entfernen, indem Sie %code%
verwendenNachdem ich den Quellcode durchforstet habe, habe ich auch festgestellt, dass das spezifische Ereignis %code% ist, wenn Sie es gezielt ansprechen wollen.
Zum Beispiel:
%Vor%
FYI In der Dokumentation heißt es über %code% :
live: Wenn diese Option auf "true" gesetzt ist, verwendet fancyBox "live", um ein Klickereignis zuzuweisen. Einstellen "false", wenn Sie nur auf die aktuelle Sammlung anwenden müssen, z mit etwas wie - $ ("#page") .children (). filter ('a'). eq (0) .fancybox ();
Hier ist ein jsFiddle demonstriert
Ich weiß, dass dies ein alter Thread ist, aber ich wollte nur bestätigen, dass OAC Designs absolut richtig ist: Das Binden der %code% -Links funktioniert nur, wenn der Parameter %code% auf %code% gesetzt ist.
Sie können Fancybox jedoch auch auf Dom-Ebene unabhängig vom %code% -Parameter zerstören, indem Sie Folgendes tun:
%code%
Oder
%code%
Sehen Sie sich JSFiddle als Referenz an.
Sie können diesen Code verwenden, um die fancybox-Funktionalität von Links zu zerstören:
%Vor%Danke für die Antwort, ich habe das obige nicht getestet. Ich habe einen anderen Ansatz gewählt, um das Problem zu lösen.
Was ich getan habe, war, anstatt die Standard-Fancybox-Funktionalität zu verwenden, habe ich Funktionen für wo ich Fancybox und manuell als Fancybox in jedem Fall, die daher das Ereignis nicht binden wollte.
Dies ist nicht der beste Ansatz und das oben genannte ist vielleicht besser, aber ich werde das im neuen Jahr testen:)
Nochmals vielen Dank.