Verständnisfrage zu jQuery

shredder01

Mitglied
Hallo,

ich habe ein Verständnisproblem im Zusammenhang mit dem Einbau eines Skriptes.
Ich will dieses Skript hier https://gist.github.com/329709 auf einer Seite nutzen.
Allerdings passierte nach dem Einbau gar nichts. Es macht nicht was es eigentlich tun soll und es gibt auch keine Fehlermeldung.
Jetzt habe ich den Teil hier
Code:
(function($){
...
})(jQuery);
abgewandelt in
Code:
jQuery(document).ready(function(){
...
});
... womit es funktioniert.
Ich kann aber sehen, dass das Skript hier http://grochtdreis.de/weblog/2010/03/12/weitere-wai-aria-verbesserungen/ in der Ursprungsversion funktioniert.

Kann mir einer erklären warum? Ich würde das gerne verstehen.
Irgendwie stehe ich gerade auf'm Schlauch. ;)

Danke.
 
Steht dein Code ebenfalls am Fuß der Seite und nicht im head? Da der originale Code nicht wartet bis das Dokument fertig geladen ist, muss der Code an einer Stelle stehen, wo zumindest die Elemente die benötigt werden schon vorhanden sind.

Oder du nimmst einfach deine Lösung. Leichte Verbesserung

Javascript:
jQuery(function($) {

});
 
Aha, das war es also. Nein mein Skript steht in der Tat, zumindest im Moment noch, im Head.
Ok und ich sehe jetzt auch warum ich keine Fehlermeldung bekommen kann. Das Skript sagt ja das alle h3 innerhalb von Elementen mit .toggle behandelt werden sollen. Wenn (noch) keine da sind, dann macht das Skript eben nix.
Klingt logisch.
Naja, manchmal muß ich wohl einfach erstmal fragen bevor sich mir die Logik dann doch selber erschließt ;)

Danke für die Erklärung und die Verbesserung.
 

Neue Beiträge

Zurück