Nachtrag: jQuery einbinden und benutzen
Wie ich schon in meinem letzten Post geschrieben habe, wollte ich noch schreiben, wie man jQuery einbindet und benutzt.
Ab der Version 2.2 von WordPress ist das jQuery Framework dabei. Ihr müsst nur, wenn Ihr das Framework auch auf eurer Website haben wollt, müsst Ihr es in Euer Template einbinden.
<?php wp_enqueue_script(‚jquery‘);?>
Das kommt in den Header von Eurem Template. Wenn Ihr zum Beispiel eine Div Box aufmachen wollt, bzw. schließen wollt, müsst Ihr folgenden Code einfügen:
<script type=“text/javascript“>
<!–
$(document).ready(function() {
$(‚#show‘).click(function(){
$(‚div#archiv‘).slideToggle(„slow“);
});
});
–>
</script>
Diese Funktion $(‚#show‘).click() gibt an, das per klickt auf das Element was passieren soll, nämlich das hier: function(){
$(‚div#archiv‘).slideToggle(„slow“); }. Diese Funktion besagt, dass das Div Archiv langsam aufgehen soll, bzw. das es bei einem klickt, wenns offen ist, wieder zu gehen soll. Deswegen slideToggle. Es gibt auch noch andere Funktionen, die Ihr hier findet. Ihr könnt als Parameter in der Funktion slideToggle folgende Sachen einstellen:
- speed (String|Number): (optional) A string representing one of the three predefined speeds („slow“, „normal“, or „fast“) or the number of milliseconds to run the animation (e.g. 1000).
- callback (Function): (optional) A function to be executed whenever the animation completes.
- easing (String): (optional) easing effect
Mein Div sieht so aus:
<li><h2 id=“show“>Archives + </h2>
<div id=“archiv“ style=“display:none“>
<ul>
<?php wp_get_archives(‚type=monthly‘); ?>
</ul>
Über den klick auf Archives + wird die jQuery Funktion aufgerufen und „slidet“ mein Archiv runter. Dabei ist es wichtig, das Ihr das div immer mit style=“display:none“ unsichtbar macht, weil man es sonst ja sieht.
Mit jQuery lassen sich viele Dinge machen. Einige Tutorials findet Ihr auf der Seite von jQuery. Massig Plugins gibt es hier.
Hallo Nils
Ich weiss dass dies ein uralter Post ist, aber ich bin über Google hergekommen wegen einem jQuery Problem… Du schreibst in diesem und im vorherigen Eintrag dass jQuery per Einbinden mit wp_enqueue_script funktioniert, und dass dies auch in der Landing Site implementiert ist. Jedoch funktioniert jQuery bei mir so nicht, und auch der Link in deiner Landing Site scheint nicht zu tun was er sollte. Auch Direktbefehle über die Firebug-Konsole werden nicht umgesetzt. Liegt das an meinem Browser (getestet mit FF3 und IE6 unter Linux) oder kannst du bestätigen dass jQuery bei dir auch nicht mehr ordnungsgemäss funktioniert? In letzterem Fall wäre es wohl ein WordPress-Update-Problem…
Desweiteren möchte ich noch anmerken dass man jQuery unter WordPress nicht mit $() sondern mit jQuery() ansprechen sollte, weil $() für die Prototype Library reserviert ist…
Cheers
Danilo
Hallo,
sehr schönes Tutorial hast du da gemacht! Das hat mich jetzt schon mal etwas weiter gebracht… weißt du zufällig wie man einem Textfeld einen color-picker mittels jquery hinzufügen kann?
@hc
hey,
naja ist auch nicht so schwer, guck mal hier: http://www.eyecon.ro/colorpicker/
Da steht eigentlich alles zu. Jquery einbinden, den colorpicker einbinden und ein wenig code. dann gehts los!
Gruß