Hallo Gunnar,
...und mich damit auf N Radiobuttons zu limitieren? Wenn ich sie im HTML habe und die Anzahl kontrollieren muss, dann kann ich sie auch abzählen.
Und wenn ich sie mit JS eh anfassen muss, kann ich sie auch passend zu den Bildern erzeugen. Die Performance ist, da das genau 1x beim Seitenstart passiert, wohl nicht relevant.
Das ist ein Dreizeiler, für einen gewissen Wert von "Drei"…
const anzBilder = document.querySelectorAll("main img").length;
document
.querySelector("#radioList")
.innerHTML = "<input type='radio' name='r'>".repeat(anzBilder);
document.querySelectorAll("#radioList input")[anzBilder/2].checked = true;
Das aria-hidden kann man - nehme ich an - auch auf das #radioList-Element legen, dessen Verwendung ich für eine Liste von Radiobuttons dringend empfehlen würde (da das Ding als PE für non-Screenreader gedacht zu sein scheint, kann man wohl auf eine role verzichten und ein einfaches div draus machen).
Rolf
--
sumpsi - posui - obstruxi
sumpsi - posui - obstruxi