Задать вопрос
juniorcoder
@juniorcoder
Ура, у нас новый умный AI...

Как изменить CSS свойство через JS?

Подскажите, как изменить класс с помощью JS(jqwery), нужно чтобы при клике менялось свойство родительского элемента при клике на .start (он внутри body) у всего body исчез overflow (полосы прокрутки)
$(function () {
    $('.start').on('click', function () {
        $('.body')(function () {
            if ($(this).css('overflow') === 'hidden') {
                $(this).removeAttr('style');
            }
        });
    });
});
  • Вопрос задан
  • 2079 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 2
lonsaria
@lonsaria
У вас странно сформулирован вопрос.

Если вам нужно по клику изменить класс у родительского элемента .start:
1) находите нужного родителя $(this).closest('.parent-class')
2) меняете класс через .removeClass(), .addClass(), .toggleClass()

Если вам нужно, чтобы по клику на .start у .body убирался overflow: hidden

$('.start').on('click', function () {
  $('.body').css('overflow', '');
});


Если вам нужно, чтобы по клику на .start у .body убирался style

$('.start').on('click', function () {
  $('.body').removeAttr('style');
});


Если вам нужно убрать style по условию

$(function () {
  $('.start').on('click', function () {
    if ($('.body').css('overflow') === 'hidden') {
      $('.body').removeAttr('style');
    }
  });
});
Ответ написан
0xD34F
@0xD34F Куратор тега JavaScript
document.querySelector('.start').addEventListener('click', () => {
  // устанавливаем значение напрямую (плохо)
  document.body.style.overflow = 'hidden';

  // или (лучше), добавляем класс, с которым связаны необходимое стили;
  // в css надо будет добавить .no-overflow { overflow: hidden; }
  document.body.classList.add('no-overflow');
});

или

$('.start').click(() => {
  $('body').css('overflow', 'hidden');

  // или

  $('body').addClass('no-overflow');
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
serginhold
@serginhold
https://developer.mozilla.org/ru/docs/Web/CSS/overflow

visible - значение по умолчанию, вот после того как проверил что hidden, делай его visible
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы