Tämä toimii vain osittain:
if (document.getElementsByClassName('header-text')[0].style.display = 'block'){
document.getElementsByClassName('header-text')[0].style.display = 'none'}
else {
document.getElementsByClassName('header-text')[0].style.display = 'block'
}
Eli, yritän testata onko elementti olemassa, ja jos on onko elementin tila (style.display = 'block') jos on asetetaan (style.display = 'none') ja jos elementti on olemassa ja sen tila on (style.display = 'none') asetetaan se tilaan (style.display = 'block')
Tuo kyllä asettaa tilan (style.display = 'none') mutta ei palauta, enkä ole varma testaako se elementin olemassa oloa ollenkaan. Miten se tehdään oikein?
JavaScript if() {} else {}
6
326
Vastaukset 6
- Anonyymi
Tämä www.w3schools.com sivun esimerkkit ei myöskään toimi tässä https://www.w3schools.com/jsref/jsref_if.asp
- Anonyymi
Muista vertailussa kaksi (tai JS:ssä jopa kolme kannattaa laittaa :D) =-merkkiä!
- Anonyymi
Niin, tarkoitat että vertailussa (==) ja arvon asetuksessa (=), mutta ei kai näin (===).
- Anonyymi
Ei kun:
vertailussa näin:
=== sama arvo ja sama tyyppi
== sama arvo
arvon asetuksessa näin:
=
- Anonyymi
Tämä antaa "Console" editorissa virheen, ellei elementtiä ole, tai elementillä ei ole tuota ominaisuutta.
x = document.getElementsByClassName('header-text')[0].style.display
Miten tuo ominaisuus tulisi selvittää ilman virheitä?
Tämä on sama kysymys kuin avauskin mutta nyt selkeämmin esitettynä.- Anonyymi
Niin, jos elementtiä ei ole, niin sitä on paha mennä muokkaamaan. Style-ominaisuus DOM-elementillä pitäisi aina olla, eli jos elementti vaan löytyy, niin sitten ei pitäisi ongelmia olla. Voit testata löytyikö elementtiä:
let el = document.getElementsByClassName('header-text')[0];
if (el) {
el.style.display = "" //...
}
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 811204
Henkilöauto ajoi puuhun Suomussalmella
Henkilöauto ajoi puuhun Suomussalmen torin laitamilla. Poliisi epäilee tutkivansa tapausta. Silminnäkijä29875Kattoikkuna puuttui - vai puuttuiko sittenkään?
Tönölään ei saatu mökkejä, kun kattoikkunasta oli pula. Näyttää konkurssihakemus tulleen kuitenkin 31.8., joten kattoikk19735- 46609
Kuka oli kuskina
Volvo suistunut päin koivua torin laidalla? Oliko vauhtia liikaa vai sairaskohtaus vai humala?13587Nythän todellisuus on kuitenkin se
että miehen täytyy tehdä miehen työ. Olla mies. Naisen täytyy tehdä naisen työ. Olla nainen. Voimme puhua pehmeitä ja180562Kajaanissa on kadoksissa 27vuotias nainen.
Poliisin tiedoteessa on ,että 1.9.2026 katosi kajaanissa 27vuotias nainen. Kuva löytyy ja tiedot pituudesta ,iästä yms.13540Petteri A-studiossa: "Ihmiset ovat alkaneet saada töitä" ..mitä vitt..
Missä todellisuudessa toi Orpo oikein elää, Suomen työttömyys 2000-luvun ja EU/OECD-maiden korkein tuplat niiden keskita123530On ollut syyllinen olo viime päivinä
Olen niin täpöllä ollut sinussa kiinni tunteiden tasolla. Unet ja kaikki. Nainen, toisaalta tuntuu pahalta, mutta kun si23460- 26448