JavaScript [JQuery]

xSeppelx

Lt. Junior Grade
Registriert
Sep. 2009
Beiträge
384
[JQuery] load verändert dom nicht

Gude,

habe seit kurzem erst Erfahrung mit JQuery.

Folgendes Szenario:
Lade per "Klick" Daten in den Content mit ".load()".
Dieser "Code" ist dann nicht im Quellcode bzw. wird net im DOM aufgefürt und wenn man auf die Elemente im Load Jquery-Selects ausübt wird das nicht gefunden und es geht nicht. Füge ich den Quellcode vom Jquery-Code in dem Dokument, wo ich das load darauf ausführe ein, dann geht es (dürfte logisch sein).

Wie kann ich jetzt quasi dafür sorgen das ich meinen JQuery-Code kompakt in einer Datei lasse oder im Zweifelsfall von der Seite wo ich lade ggf. über 1-2 JQuery (bzw. JS) Zeilen dafür sorgen, dass dieser Teil gefunden wird?

Kurzes Schema:

Content:
Button klick
Lädt einen weiteren Button (z.B) dieser hat einen anderen Klick-Handler, der nicht auslöst, weil mein JQuery-Code den "DOM" nicht findet.

Vlt. hat jemand eine "simple" idee :)

Gruß

edit:
Hab den JQuery Code einfach auf jeder Seite seperat eingebunden, ist der einfachste Weg gewesen.
 
Zuletzt bearbeitet:
Wenn du jQuery benutzt, musst du Events mit der .on() - Methode an die Objekte im DOM binden.
 
Okay dann schaue ich mir nachher Mal die .on()-Methode an.
Danke für den Hinweis!
 
Hmm, wo genau im Dokument hast du den Javascript Code eingefügt?

Wenn der direkt im <head> steht (oder dort verlinkt ist), dann wird es nicht funktionieren, da der Browser den DOM noch nicht komplett geladen hat. Ist ein beliebter Anfängerfehler.
Der Browser arbeitet die Seite immer von oben nach unten ab. Ein Selektor im <head> wird also nichts finden, denn der Browser kennt den <body> noch garnicht.

Also entweder die <script> Tags direkt vor den </body> Tag setzen oder du bindest deinen Code an das "DOMContentLoaded" Event.
Das geht sehr leicht mit der ready Funktion von jQuery (die verwendet intern DOMContentLoaded)
 
Zuletzt bearbeitet:
Zurück
Oben