Jungs, das ist ein jQuery-Akkordeon, wo dieDas vorherige Akkordeon (Registerkarte) wird geschlossen, wenn Sie ein neues öffnen. Wenn Sie beispielsweise die erste Registerkarte und dann die zweite Registerkarte öffnen, wird die erste geschlossen. Grundsätzlich wird beim Öffnen einer Registerkarte die andere geschlossen. Wie verhindere ich, dass die vorherige geschlossen wird? Die Registerkarte sollte nur geschlossen werden, wenn der Benutzer erneut darauf klickt.
Hier ist die jQuery -
jQuery(document).ready(function ($) {
var open = $(".openx"),
a = $("ul").find("a");
console.log(a.hasClass("active"));
open.click(function (e) {
e.preventDefault();
var $this = $(this),
speed = 500;
if ($this.hasClass("active") === true) {
$this.removeClass("active").next(".inneraccordionbox").slideUp(speed);
}
else if (a.hasClass("active") === false) {
$this.addClass("active").next(".inneraccordionbox").slideDown(speed);
} else {
a.removeClass("active").next(".inneraccordionbox").slideUp(speed);
$this.addClass("active").next(".inneraccordionbox").delay(speed).slideDown(speed);
}
});
});
Das Akkordeon ist in ul
li
Format, mit a
Tag mit der Klasse openx
Antworten:
0 für die Antwort № 1Einfach das Auskommentieren der folgenden Zeile wird funktionieren. da es derjenige ist, der alle Gegenstände verschließt.
a.removeClass("active").next(".inneraccordionbox").slideUp(speed);