JavaScript if() {} else {}

Anonyymi

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?

6

326

    Vastaukset 6

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi
    • 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

    1. Onko sulla rakas mitään sanottavaa?

      Lähetä tässä kaivatullesi haluamasi terveiset 💌
      Ikävä
      234
      2027
    2. Nanna hakkasi Martinan aivot tuusan nuuskaksi!!!

      Ihme jos Martina pystyy muodostaa järkeviä lauseita tämän nyrkkisateen jälkeen. Ottelupalkkio tuli, tajunta meni.
      Kotimaiset julkkisjuorut
      260
      1184
    3. Liikenneonnettomuus kuhmo

      Taisi Audi mennä lunastukseen ja pemari kilometritehtaalle
      Kuhmo
      20
      1045
    4. Oot sä aika nuorekas...

      Vaikka oot niin vanha!
      Ikävä
      38
      719
    5. Vaikea löytää samantyylistä miestä

      Nyt on pakko avautua. Onko ketään muuta jonka on yksinkertaisesti todella vaikeaa löytää samanhenkistä kumppania kuin i
      Sinkut
      125
      706
    6. Martina ja Muhis

      Aamulenkillä yhdessä valmistautumassa suuren päivään,toivottavasti heräsivät toistensa viekusta.Ihana pariskunta❤
      Kotimaiset julkkisjuorut
      225
      668
    7. Rasismi ahdistaa.

      Tapasin baarissa oikein lupsakan oloisen miehen, mutta arvomaailma on hyvin erilainen omani kanssa. Hän käyttää n-sanaa
      Sinkut
      203
      611
    8. Näin sut.

      olitpas vanhentuneen näköinen. 😆 mieheltä naiselle
      Ikävä
      51
      465
    9. Oot pelkkä naurun aihe

      🤣🤣🤣🤣🤣 m-n
      Ikävä
      38
      438
    10. Olenkohan tunteideni kanssa yksin?

      Salaa toivon, että sinä nainen luotat minuun niin paljon, että uskaltaisit lähentyä kanssani, vaikka tämä on vähän kiell
      Ikävä
      42
      432
    Aihe