Jquery «rermoveClass» не работает с всплывающим окном (выполняется с помощью elementor WordPress)

#javascript #jquery

#javascript #jquery

Вопрос:

это мой код:

 jQuery('#scheda').click(
       function(open){jQuery('.bginfo, .bginfo6, .bg5').addClass('shown') },
     );
  

чтобы сделать некоторые элементы видимыми, добавив класс с непрозрачностью: 1, при нажатии на раздел на странице. Это работает правильно, но если я применяю обратную логику к щелчку изображения во всплывающем окне, этот код не работает.

 jQuery('#closex').click(
       function(){jQuery('.bginfo6, .bginfo').css('opacity','0') },
     );
  

Я не понимаю, почему. вы можете мне помочь?
вот ссылка на страницу: http://tuscany.designce.it/classic-florence-and-beyond /

Вы можете попробовать исправить ошибку, нажав на второе изображение с заголовком «essential florence», вы увидите, что на карте появляются элементы, которые должны исчезнуть при закрытии всплывающего окна, точнее, при нажатии на «X».

Спасибо

Комментарии:

1. Скорее всего, ваш «closex» не существует во время выполнения вашего кода, поэтому вам понадобится делегирование событий, попробуйте: $(document).on("click", "#closex", function...

2. Если вы просто хотите изменить и скрыть элементы, которые были показаны addClass() , почему бы не сделать jQuery('.bginfo, .bginfo6, .bg5').removeClass('shown') вместо того, чтобы устанавливать непрозрачность напрямую.

3. Привет, ребята, спасибо за ваш ответ @freedomn-m я пытался изменить, как вы указали, но это все еще не работает. вот мой код: jQuery('#pop').on('click', 'a', function(){ jQuery('.bginfo6, .bginfo').removeClass('shown') },); . #pop правильно ли указан идентификатор всплывающего окна, поэтому я должен был делегировать событие для его загрузки?