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. Mikä sua mies vaivaa?

      Siis oikeasti.
      Ikävä
      72
      1116
    2. 65
      1080
    3. Mitä vuosimallia kaivattusi on?

      🤣🤣🤣🤣🤣🤣
      Ikävä
      61
      862
    4. 93
      837
    5. Kuinka hyvin te sopisitte

      Toisillenne vai sopisivatko ollenkaan? Mitä eroja
      Ikävä
      43
      697
    6. Jasmin vauhdissa

      Kyllä pitää Jassulla kiirettä, kun yhtenään menoa mun äidin, isäpuolen ja Markon kanssa Ossianin ollessa tietysti sulois
      Kotimaiset julkkisjuorut
      237
      694
    7. Vinkkiä miehelle

      Huomenna olen kuudesta eteenpäin kotona, yksin… Pääsetkö/uskallatko tutustua?
      Ikävä
      50
      608
    8. Miksi et halua kaivattusi

      kanssa suhteeseen? Onko jokin syy vaikka rakastat häntä?
      Ikävä
      68
      602
    9. Joko uskallat.

      Huomenna nähdään.
      Ikävä
      40
      580
    10. Onko kaivattusi

      seksuaalisesti vetovoimainen?
      Ikävä
      21
      574
    Aihe