Clickfunnel: Wieso funktioniert nur jedes zweite JavaScript-Element?
Ich habe in meinem ClickFunnel vier JavaScript-Elemente. Sie sind nicht direkt hintereinander, aber genau gleich gecodet.
Es handelt sich dabei um Dropdown-Elemente.
Mein Problem ist, dass das erste und dritte Element problemlos funktioniert, aber das zweite und vierte nicht. Da kommt kein Dropdown, wenn ich darauf klicke, obwohl alle Elemente gleich gecodet sind.
Woran könnte das liegen? Stehen die einander vielleicht im Weg? Ich kann es auch leider nicht anders machen, da zwischen den Elementen Bilder sind, die dazu gehören.
Hier mein Code (HTML / JS) von einem Element:
<div class="all4">
<div class="obj">
<button class="Produkte" style="margin-right: 1vw;">Kompressor</button>
<div class="panel">
<p>
Tankinhalt: 2 × 50 Liter</br>
Energiequelle: Honda 4Takt GX200 bleifrei</br>
Antrieb: Riemen</br>
Atom. Standgas: Ja</br>
Start: Zugseil</br>
Abgabeleistung: 490 Liter Minute bei 12 bar</br>
Abgabeleistung: 550 Liter Minute bei 6 bar</br>
Max. Druck: 12 bar</br>
Abmessungen: 95cm × 51cm × 85cm (ohne Transportgriffe)</br>
Gewicht: ca. 75 Kg</br>
Lärm: ca. 95 Db</br>
Garantie: 1 Jahr</br>
</p>
</div>
</div>
<script>
var acc = document.getElementsByClassName("Produkte");
var i;
for (i = 0; i < acc.length; i++) {
acc[i].addEventListener("click", function() {
this.classList.toggle("active");
var panel = this.nextElementSibling;
if (panel.style.display === "block") {
panel.style.display = "none";
}
else {
panel.style.display = "block";
}
});
}
</script>
3 Antworten
- Das HTML ist nicht valide, es gibt kein </br> sondern nur <br> oder <br/>
- Prinzipiell funktioniert das so!? Siehe https://jsfiddle.net/f1v9y276/ Du hast den Javascript Code nur einmal drin, oder?
Ich verstehe zwar (noch) nicht wirklich viel vom Programmieren, aber was immer helfen kann, ist ChatGPT. Einfach Code reinkopieren und fragen, ob das Ding einen Fehler finden kann bzw. mit Hilfe des Codes den Fehler beschreiben und das Ding spuckt dir im besten Fall eine Lösung aus, die auch tatsächlich hilft. Die Chancen dafür stehen mittlerweile gar nicht mal so schlecht.
Haha ja, was das anbelangt... Habe ich schon versucht. Aber es half nicht wirklich; plötzlich war alles verschoben wie bei einem Word Dokument, dann komplett weg... Half mir leider nicht wirklich, aber Danke für den Vorschlag :)
Verwende bitte kein var und stattdessen nur const oder let. Var ist global und kann schnell zu solchen Problemen führen
Ansonsten bräuchten wir schon den ganzen Code mit allen 4 Dropdowns, am besten als ausführbarer Testcase in jsfiddle.