@Meyz

Почему не работает код (Javascript)?

Есть <div class="left-menu">
Также есть медиа запрос
@media screen and (max-width: 1000px) {
   .left-menu{
       display: none;
   }
}

Пишу код на js:
var leftMenu = document.querySelector(".left-menu");
console.log(leftMenu.style.display == 'none');

И он показывает мне false, когда экран меньше 1000px, при том, что в хроме показывает что display: none :
5a323d22658d3762460195.png
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
Потому что правило display для вашего компонента задается селектором css, а не является ключом собственного свойства style.

Так будет работать:
var leftMenu = document.querySelector(".left-menu");
var displayValue = window.getComputedStyle(leftMenu,null).getPropertyValue("display");
console.log(displayValue === 'none');
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
leftMenu.style.display это инлайн стили. Если задать стили через CSS они не появятся в свойстве style у элемента. Читать их надо по-другому.
Ответ написан
Комментировать
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
if(screen.height =< 1000 )
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы