Обратите внимание, что вы назначаете вместо проверки:
if (h1.style.display ="block")
Один =
означает присвоение «блока» свойству отображения, и оно вернет true, и поэтому всегда будет устанавливать отображение на false .
вы должны сделать это следующим образом:
if (h1.style.display == "block")
And
} else if (h1.style.display == "none"){
Вы также можете сделать свой код более эффективным, используя некоторые функции ES6:
h1.style.display = h1.style.display == 'block' ? 'none' : 'block'
Метка ?
- это короткое if, а :
- короткое else.
Таким образом, он в основном говорит, что если значение является блочным, установите значение none, иначе установите его для блокировки.
Подробнее об операторах в JS и ES6.