Benutzerdefinierte jQuery-Funktion funktioniert nicht auf WordPress auch wenn andere geladene jQuery-Funktionen arbeiten
Ich bin mit WordPress 3.8.1. Ich möchte diese Funktion verwenden, um den klebrigen header
<script>
$(document).ready(function() {
var $header = $("header"),
$clone = $header.before($header.clone().addClass("clone"));
$(window).on("scroll", function() {
var fromTop = $(window).scrollTop();
console.log(fromTop);
$("body").toggleClass("down", (fromTop > 200));
});
});
</script>
Aber es ist nicht für mich arbeiten, und ich weiß nicht, warum. Ich weiß, dass jQuery ist geteilt auf meiner WordPress, weil Flexslider 2 funktioniert jetzt einwandfrei.
- Jeder Ausgang über die Entwickler-Konsole? Was meinst du mit Flexslider 2 funktioniert nun.
- ich bin ein neuer Programmierer weiß nicht, über Entwickler-Konsole , ich denke, wenn die jquery-Bibliothek did ' NT share auf meinem wordpress-flexslider nicht funktionieren
- tut .on() arbeiten auf jquery wordpress verwenden ( die ich habe zu verwenden .live() verwendet werden)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie diese:
Nun, Sie können schreiben Sie Ihre jQuery-code wie folgt:
Nur weisen die
noConflict()
Funktion einer Variablen zu, und verwenden Sie die variable statt$
gesehen im jQuery-code.Nicht laufen Ihre jquery in einem Skript. Dies wird brechen sonstige scripts in wordpress.
Machen .js-Datei und fügen ihn in Ihre functions.php Datei wie diese.
Dann in Ihr .js-Datei, wickeln Sie Ihren code in einem No Conflict wrapper. Die Verwendung von $() wird return undefiniert sonst.
Spät zur party hier, aber die richtige Lösung ist:
Verstehen, dass in WordPress, jQuery geladen wird kein Konflikt - Modus. Dies bedeutet, dass die
$
variable nicht verweisen auf jQuery.Aber, indem Sie Ihre Skripts das zu verwenden ist ein no-Konflikt-safe-Dokument bereit, die Sie verwenden können, die
$
innerhalb der Funktion.Ändern Sie Ihr Skript wie folgt:
Haben Sie versucht, die Einstellung der jquery-Datei in den header ein (vorausgesetzt, Sie haben die jquery-Datei in Ihrem templates-Ordner haben, aber es kann überall sein, solange Sie es richtig):
Beispiel
Verwende ich jquery auf alle meine wordpress-Seiten und es funktioniert gut
hoffe, das hilft.