jquery: .load-HTML-Inhalte können nicht auf jquery zugreifen

apple][c

apple][c

Aktives Mitglied
Thread Starter
Dabei seit
26.01.2005
Beiträge
878
Reaktionspunkte
190
Hallo zusammen,

ich habe ein kleines Problem:

Wenn ich auf einer Webseite mittels der .load Funktion von Query eine HTML-Seite in ein DIV-Element nachlade, reagiert jquery nicht auf CSS-Klassen in diesem HTML-File. Es passiert also nichts, wenn man auf ein div klickt, das einer .link-CSS Klasse angehört.

Beispiel:
Code:
Datei index.html:
...
$("#main").load("welcome.html");
$('.quotelink').click(function() {
		alert(1);
});
...
<div id="main">leer</div>
...
Code:
Datei welcome.html
....
Klicken Sie <a class="quotelink">hier</a> für ein Angebot.
....

Wenn man "welcome.html" nachlädt, kann ich auf den Link klicken, es passiert nichts.

Wenn der Code direkt in der index.html steht, dann bringt er die Alert-Meldung.

Hat jemand Tipps für mich?

Danke!

Marc
 
du musst die jquery anweisungen nochmal mitladen also direkt in das zu ladende html ein betten - dann reagiert er drauf
 
  • Gefällt mir
Reaktionen: apple][c
Geht es bitte eleganter? Das wäre ja eine Code-Verdopplung nur weil ich einen Inhalt nachladen will und diesen sensitiv auf Funktionen haben will.

Doppelter Pflegeaufwand. Das kann doch nicht der Weisheit letzter Schluss sein....
 
So, ich antworte mal mir selber, falls andere das gleiche Problem haben:

Seit der Version 1.3 von jQuery gibt es den Event .live()

Der fügt einen Handler einer aktuellen und allen zukünftigen Objekten mit gleichem Selector hinzu. Geht zwar nicht für alle Funktionen aber zumindest für click.

Hier die Info dazu:

http://docs.jquery.com/Events/live
 
Zurück
Oben Unten