- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть такой код
setTimeout(function(){
jQuery(document).on("click", ".quest", function(e){
var el = jQuery('#questdiv');
if(!el.html()){
if(el.hasClass('moscow'))el.html('<span>инфа №0</span>');
else if(el.hasClass('spb'))el.html('<span>инфа №1</span>');
else if(el.hasClass('goroda'))el.html('<span>инфа №2</span>'); //это я сейчас пытаюсь добавить.
else el.html('<span>инфа №3</span>');
}
if(el.css
Он отвечает за работу вопросика на сайте, по которому кликают юзеры и им открывает окошечко с инфой.
Теперь возникла необходимость показывать не некоторых страницах два таких вопросика (раньше он на странице был всегда один).
В пхп вопросик прописан так
<span class="quest">?</span>
<div class="questdiv moscow" id="questdiv"></div>
<div class="clickme" id="clickme"></div>
Ну и решил я по аналогии добавить еще один вопросик. В пхп на нужных страницах прописал
<div class="questdiv goroda" id="questdiv"></div>
<div class="clickme" id="clickme"></div>
а в JS добавил строку
В итоге на страницах где два вопросика при клике по вопросику инфа потягивается из первого else if (того что я добавил, а
else el.html('<span>инфа №3</span>'); работать перестал. При клике по второму вопросику показывается то же что и при клике по первому.
На страницах где один вопросик с вариантом текста №3 - все работает нормально.
Где я ошибся? Я так думаю потому что у двух вопросиков одинаковый var el = jQuery('#questdiv'); ?
Да, лучше к class привязаться, var el = jQuery('.questdiv');
Chkan, не помогло - при клике всплывало сразу две подсказки с обоих вопросиков.
Пока решил криво - написав новую функцию
setTimeout(function(){
jQuery(document).on("click", ".quest2", function(e){
var el = jQuery('#questdiv2');
if(!el.html()){.......
Где всем идентификаторам добавил цифру 2.
Убого конечно, должен быть путь проще и изящнее... но я его пока не вижу. :(
можно вот так попробовать, через parent контейнер
Dram, у вас архитекнурно не очень хорошо сложено. Пример более лучшего варианта https://jsfiddle.net/webxz/aq6Lxw4f/
Chkan, у вас диви одинаковые - так и нужно? Попробовал с вторым таким дивом
<div class="questdiv goroda" id="questdiv"></div>
<div class="clickme" id="clickme"></div>
открывается только подсказка №2 которая выше в коде.
---------- Добавлено 02.09.2019 в 12:06 ----------
Gerga, немножко не красивенько ваш вариант.
Gerga, немножко не красивенько ваш вариант.
Хм. Почему?
Например в нем div создается только при необходимости + абстракция получения данных функцией getAnswer + хорошо расширяется.
Gerga, инфа не убирается по второму клику, там и остается там на странице..
Dram, ага. Ну show() можно поменять на toggle() :)
https://jsfiddle.net/webxz/4jcb6k2z/
или так сделать:
https://jsfiddle.net/webxz/1vaznoc7/
Закрытие будет при нажатии на [close]
Chkan, у вас диви одинаковые - так и нужно? Попробовал с вторым таким дивом
открывается только подсказка №2 которая выше в коде.
---------- Добавлено 02.09.2019 в 12:06 ----------
Gerga, немножко не красивенько ваш вариант.
смысл в том чтоб конструкция
находилась в отдельном контейнере от другой подобной конструкции, т.е. в каждая в отдельном div
Gerga, большое спасибо, сделал по вашему, все работает!