Удаление класса при клике в любом месте страницы

Тема в разделе "JavaScript", создана пользователем NikroVir, 5 янв 2017.

Модераторы: ZiX
  1. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    326
    Симпатии:
    108
    Доброго времени суток.

    Есть такой код: Перейти по ссылке . Используется он для открытия меню в шапке путём добавления класса.
    Как модифицировать код, чтобы меню закрывалось по клику в любом месте страницы, а не только по .some-btn?

    Буду благодарен, если вы предложите уже готовый вариант, т.к. в js почти дуб дубом.
     
  2. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    386
    Симпатии:
    256
  3. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    326
    Симпатии:
    108
    Спасибо. Но можно ещё сделать, чтобы при клике внутри .some_menu закрытие блока не происходило?
     
  4. xapai1988

    xapai1988 Создатель

    Регистр.:
    12 дек 2009
    Сообщения:
    20
    Симпатии:
    6
    У меня все работает как и должно. При клике внутри .some_menu ничего не закрывается.
     
  5. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    326
    Симпатии:
    108
    хм... в демке действительно всё нормально работает, а вот в проекте почему-то закрывается... может можно костыль какой-нибудь запилить?
     
    Последнее редактирование: 6 янв 2017
  6. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    386
    Симпатии:
    256
    В демке я $(this).toggleClass('lb-opened'); заменил на $(this).addClass('lb-opened');

    Поэтому там всё как надо. Вам готовый рабочий код дают
     
    NikroVir нравится это.
  7. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    326
    Симпатии:
    108
    у меня действительно остался toggleClass. с addClass всё закрывается нормально, но не закрывается по повторному клику по .some-btn. как в таком случае это можно исправить?
     
  8. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    386
    Симпатии:
    256
    Вы сами себе противоречите
     
  9. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    326
    Симпатии:
    108
    В смысле противоречу? клик по кнопке - открытие, клик по кнопке, или вне .some_menu - закрытие.
    быть может вы не внимательно прочитали мои посты и спутали .some-btn с .some_menu?
     
  10. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    386
    Симпатии:
    256
    some-btn это родитель some_menu. Клик по some_menu это всегда клик по some-btn

    Событие надо вешать тогда на span
    Перейти по ссылке