JavaScript - TypeError: document.getElementsByClassName(...).style is undefined

JavaScript - TypeError: document.getElementsByClassName(...).style is undefined

Ahoj,

když se snažím na HTML stránce skrýt obsah pomocí tlačítka na Ukaž / Skryj podle tohoto návodu https://cloud.up4.cz/poradna/48-tlacitko-na-skryvani-obsahu-v-html-strance s tím rozdílem, že já chci skrýt všechny DOM elementy s class name "hide"


function hide(x)
{
if(x==1)
document.getElementsByClassName("hide").style.display="block";
else
document.getElementsByClassName("hide").style.display="none";
}


tak to háže chybu TypeError: document.getElementsByClassName(...).style is undefined . Nevíte co s tím?

ODPOVĚĎ


Ahoj,

getElementsByClassName ti vrací kolekci (pole), takže chybu TypeError: document.getElementsByClassName(...).style is undefined lze vyřešit v tomto případě třeba takto:


function hide(x)
{
var hides = document.getElementsByClassName("hide");
for(var i = 0; i < hides.length; i++)
{
if(x==1) {
document.getElementsByClassName("hide")[i].style.display="block";
} else {
document.getElementsByClassName("hide")[i].style.display="none";
}
}
}

Komentáře

Vaše reakce na JavaScript - TypeError: document.getElementsByClassName(...).style is undefined

Související obsah

programovani

javascript

dom

html

element

Reference

Podívejte se na naše reference

Prohlédnout

Aplikace

Podívejte se na naše aplikace

Prohlédnout

Co umíme?

Podívejte se co umíme

Prohlédnout

Co umíme?

Vytváříme sofistikované aplikace pro náročné

Od webových aplikací přes android až po převodové můstky či složité informační systémy.

Podívejte se k nám

Máte ještě čas? Podívejte se na další rubriky

Tento web používá soubory cookie. Dalším procházením tohoto webu vyjadřujete souhlas s jejich používáním.. Více informací zde.