Hallo,
ich hoffe ich bin hier im richtigen Forum, aber hier waren ja schon Themen mit ähnlichen Anliegen.
Meins:
Ich habe auf einer Seite in Wordpress einen Link, bei dessen Anklicken ein Text mit mehr Informationen per jQuery slideToggle eingeblendet werden soll. Dazu habe ich eine Funktion geschrieben, die aufgerufen wird und das funktioniert auch.
Nun möchte ich aber auch, dass sich der Textlink von "mehr..." in "weniger..." verändert. Dazu habe ich eine weitere Funktion geschrieben. Diese funktioniert jedoch nur, wenn ich die gewünschten spans mit # selektiere. Ändere ich alle IDs in Klassen, damit ich die Funktion mehrmals und an verschiedenen Stellen benutzen kann, dann funktioniert es nicht.
Ich habe diese beiden Funktionen in einem externen js-File, welches ich über den HTML-Header-Insert im Atahualpa-Theme in den Header wie folg einbinde:
<?php wp_enqueue_script( 'crew', plugins_url($path = 'wp-includes/js/crew.js'), array('jquery') ); ?>
Diese Datei sieht dann so aus:
var stat;
jQuery('a.crewmitglied').click(function(){
idelem = jQuery(this).attr('id');
idelemdiv = idelem.replace('link', 'div');
jQuery('#'+idelemdiv).slideToggle(300);
});
jQuery('.mw').click(function () {
if (stat == 'wen') {
jQuery('.mehrweniger').replaceWith('<span class="mehrweniger" title="mehr">mehr...</span>');
stat = 'me';
}
else { jQuery('.mehrweniger').replaceWith('<span class="mehrweniger" title="weniger">weniger...</span>');
stat = 'wen'; }
});
Alles anzeigen
Wenn in der zweiten Funktion alle "." in "#" und alle "class" in "id" geändert werden und mein Link so aussieht:
<a id="link_ralf" class="crewmitglied" onclick="return false;" href="#"><span id="mw"><span id="mehrweniger" title="mehr">mehr...</span></a>
dann geht es bei diesem ersten Link einwandfrei, aber logischerweise bei keinem anderen.
Hab ich jedoch den Link so:
<a id="link_ralf" class="crewmitglied" onclick="return false;" href="#"><span class="mw"><span class="mehrweniger" title="mehr">mehr...</span></a>
und die Funktion wie oben angegeben. Dann funktioniert nur der slideToggle, sonst nichts.
Überseh ich irgendwas oder denke falsch??