JS - aria-expandend

0

Witam, nie mam pojęcia czemu mój kod nie chce dodać tej klasy, gdy ten atrybut ma wartość true. Proszę o pomoc. HTML nie jest potrzebny, więc nie dodaję. Pozdrawiam

<script>
 if ($('.panel-heading-a').attr('aria-expanded') === true) {
	$('.panel-heading-a').toggleClass('panel-heading-a2');
}
</script>
0

.attr zwraca "true", czyli string, a Ty porównujesz to używająć operatora === do wartości typu boolean, więc nie odbywa się rzutowanie. Swoją drogą nawet gdyby się odbywało, to string o niezerowej długości reprezentuje true, więc gdyby to bylo false i tak bys dostał true porównując to == :) Większość tego typu operacji zwraca Ci string, więc musisz uważać. Chyba .data zwraca typ jaki tam wpakujesz, ale nie koduje dużo w js, więc musisz sprawdzic.

1 użytkowników online, w tym zalogowanych: 0, gości: 1