Hallo Leute,
um zuerstmal den Aufbau zu schildern ich hab eine Seite, die mit einer Funktion über AJAX an ein PHP Script Dateien abruft. Die Dateien bestehen aus HTML+Script. Im Callback des AJAX wird der inhalt der Datei in ein Div geschrieben.
So nun wird mir die Datei im Div angezeigt soweit so gut funktioniert wie gewünscht. Wenn ich eine neue Seite über diese Funktion nun abrufe wird das Div geleert und wieder mit der nächsten Seite gefüllt (funktioniert noch immer gut).
Nun wenn ich aber wieder die erste Seite über diese Funktion lade, werden manche Funktionen nochmal geladen also Timer läuft doppelt so schnell und der ein oder andere Click-Event wird bei einmaligen betätigen aufeinmal zweimal ausgeführt.
Nun dachte ich mir wenn ich beim nächsten Laden einer Seite das Div leere über .empty() könnte der Scriptteil evtl. weiter bestehen bleiben. Deswegen habe ich dann zweit Dateien erstellt mit jeweils einen Button, mit der selben Klasse und nur in einer Datei ein Script, das ein console.log ausgibt wenn ich draufklicke... nun lade ich die Datei mit dem console.log Script wechsle auf die Seite ohne das Klickerreignis und es passiert nichts also ist das Script dann doch nichtmehr vorhanden???
Ich hoffe dass es jemand versteht was ich hier meine auch wenn ich wieder auf die erste Seite wechsele und auf den Button klicke kommt nur ein Log eintrag...
Bei Intervallen hab ich ein Workaround das ich einfach alle Intervalle Beende bevor die Seite geladen wird aber das kann ja nicht die Lösung sein.
Hat vlt. jemand einen Anstoß wie ich diese Problematik lösen kann oder einen Begriff, der dieses Problem beschreibt??
Wenn Quellcode oder sonstiges gewünscht wird einfach bescheid geben.
Mit freundlichen Grüßen Roman
um zuerstmal den Aufbau zu schildern ich hab eine Seite, die mit einer Funktion über AJAX an ein PHP Script Dateien abruft. Die Dateien bestehen aus HTML+Script. Im Callback des AJAX wird der inhalt der Datei in ein Div geschrieben.
So nun wird mir die Datei im Div angezeigt soweit so gut funktioniert wie gewünscht. Wenn ich eine neue Seite über diese Funktion nun abrufe wird das Div geleert und wieder mit der nächsten Seite gefüllt (funktioniert noch immer gut).
Nun wenn ich aber wieder die erste Seite über diese Funktion lade, werden manche Funktionen nochmal geladen also Timer läuft doppelt so schnell und der ein oder andere Click-Event wird bei einmaligen betätigen aufeinmal zweimal ausgeführt.
Nun dachte ich mir wenn ich beim nächsten Laden einer Seite das Div leere über .empty() könnte der Scriptteil evtl. weiter bestehen bleiben. Deswegen habe ich dann zweit Dateien erstellt mit jeweils einen Button, mit der selben Klasse und nur in einer Datei ein Script, das ein console.log ausgibt wenn ich draufklicke... nun lade ich die Datei mit dem console.log Script wechsle auf die Seite ohne das Klickerreignis und es passiert nichts also ist das Script dann doch nichtmehr vorhanden???
Ich hoffe dass es jemand versteht was ich hier meine auch wenn ich wieder auf die erste Seite wechsele und auf den Button klicke kommt nur ein Log eintrag...
Bei Intervallen hab ich ein Workaround das ich einfach alle Intervalle Beende bevor die Seite geladen wird aber das kann ja nicht die Lösung sein.
Hat vlt. jemand einen Anstoß wie ich diese Problematik lösen kann oder einen Begriff, der dieses Problem beschreibt??
Wenn Quellcode oder sonstiges gewünscht wird einfach bescheid geben.
Mit freundlichen Grüßen Roman
[FRAGE] Mehrfachaufruf von Funktionen nach mehrmaligen Laden von Seiten AJAX PHP JQuery
Aucun commentaire:
Enregistrer un commentaire