2010-11-30 11 views
1

Ich beginne mit Wordpress und versuche, jQuery als meine JavaScript-Bibliothek der Wahl zu verwenden. Ich habe es geladen mit wp_enqueue_script aber aus irgendeinem Grund, wenn die Seite tatsächlich lädt die $ Funktion tut es so mit es verhält sich wie es in Prototype (Single-Dollar-Zeichen ist "get by Id" und $$ ist das CSS-Selector-System).jQuery Kuriosität in Wordpress

Ich bin sehr verwirrt, warum, weil ich nirgendwo in der Antwort vom Server finden kann, wo der Befehl zum Laden von Prototyp kommt; Es gibt kein <script>-Tag im Kopf oder Körper, das auf die Bibliothek verweist, und Firebugs Liste der geladenen Skripts enthält es nicht. Hat jemand anderes dieses Problem festgestellt, und wenn ja, wo versteckt sich Prototype?

aktualisiert

Nach einer Idee, ich etwas ausprobiert - das $ und $$ Verhalten Teil der Wordpress-Kopie von jQuery 1.4.2 ist: Laden Sie das Skript aus dem Google-CDN löste das Problem. Die neue Frage lautet also: "Warum unterscheidet sich Wordpress jQuery von normaler jQuery?"

+2

Ein Link zu dieser Seite könnte hilfreich sein. Nur weil es wie Prototyp "handelt", bedeutet es nicht, dass es ist; vielleicht implementiert ein anderes Skript das '$' und '$$' Verhalten. – Matt

+0

Es ist leider noch nicht live. Das einzige Skript, von dem behauptet wird, dass die Seite geladen wird, ist jQuery v1.4.2, also auch wenn es nicht Prototyp ist, ist etwas immer noch nicht richtig. – ehdv

+0

Wie lautet die Quell-URL für das Skript? Hast du den Inhalt überprüft? Gibt es * irgendwelche * andere Skripte auf der Seite? – TheDeadMedic

Antwort

1

"Warum unterscheidet sich Wordpress jQuery von normalen jQuery?"

Wordpress Lasten jQuery in no conflict mode - ein anderes Skript auf der Seite must've mit den $ sicherlich worden basteln?

+0

Das war mein Denken, aber ich kann nicht herausfinden, woher * dieses * Skript kommt. Ich habe sogar nachgesehen, ob Prototype aus irgendeinem perversen Grund inline enthalten war, aber es hat nicht ... – ehdv

0

Einige Dinge, die ich versuchen, um dies könnte zu debuggen:

  • Seite speichern unter -> Web-Seite, komplett. Durchsuchen Sie das resultierende Verzeichnis nach "Prototype".

  • Dann beginnen Sie mit Ihrer gespeicherten Kopie der Seite basteln. Sie könnten <script> Tags an verschiedenen Stellen im Kopf des Dokuments einfügen, um herauszufinden, an welchem ​​Punkt $ gesetzt ist oder an welchem ​​Punkt sich sein Verhalten ändert.

  • Oder verwenden Sie in Firefox this.watch("$", function() { alert(Error().stack); }), um zu sehen, wo es eingestellt ist.