Почему не работает код?
Здравствуйте!
Всё работало нормально в HTML шаблоне.
Наводишь на ссылку то вставляется соответствующая картинка в другой блок.
Вывод картинки с заголовком [[pdoResources? &parents=`5` &depth=`0` &tpl=`Tpl_cat_imageTitles` &includeTVs=`image_left_category` ]] |
Вывод картинки с заголовком [[pdoResources? &parents=`5` &depth=`0` &tpl=`Tpl_cat_imageTitles` &includeTVs=`image_left_category` ]]
Вывод карточек с ссылкой [[pdoResources? &parents=`5` &depth=`0` &tpl=`Tpl_cat_card` &includeTVs=`category_img, image_left_category` ]] |
Вывод карточек с ссылкой [[pdoResources? &parents=`5` &depth=`0` &tpl=`Tpl_cat_card` &includeTVs=`category_img, image_left_category` ]]
Как только посадил на ModX то стало криво работать.
Может не правильно вывожу?
document.addEventListener("DOMContentLoaded", function() { let links = document.querySelectorAll('.link-cat'); for (let i = 1; i < links.length; i++) { links[i].addEventListener('mouseover', (function(index) { return function() { showBlock(index); }; })(i)); links[i].addEventListener('mouseout', (function(index) { return function() { hideBlock(index); }; })(i)); } function showBlock(index) { document.querySelectorAll('.block-img img')[index].classList.add('visible'); document.querySelectorAll('.label-cat-img')[index].classList.add('visible'); } function hideBlock(index) { document.querySelectorAll('.block-img img')[index].classList.remove('visible'); document.querySelectorAll('.label-cat-img')[index].classList.remove('visible'); } }); |
document.addEventListener("DOMContentLoaded", function() { let links = document.querySelectorAll('.link-cat'); for (let i = 1; i < links.length; i++) { links[i].addEventListener('mouseover', (function(index) { return function() { showBlock(index); }; })(i)); links[i].addEventListener('mouseout', (function(index) { return function() { hideBlock(index); }; })(i)); } function showBlock(index) { document.querySelectorAll('.block-img img')[index].classList.add('visible'); document.querySelectorAll('.label-cat-img')[index].classList.add('visible'); } function hideBlock(index) { document.querySelectorAll('.block-img img')[index].classList.remove('visible'); document.querySelectorAll('.label-cat-img')[index].classList.remove('visible'); } });
Дополнительно:
Что в консоле браузера написано?
(function(index) { return function() { showBlock(index); }; })(i)(function(index) { return function() { showBlock(index); }; })(i)
Не то, чтобы это на что-то повлияло, но зачем тут иифе?
стало криво работать.
Очень подробное описание проблемы.
Не поможет - рассказывай, что именно криво.
Вот видео с шаблона всё работает
А вот видео где не корректно работает и почему-то скрипт начинает работать с конца элемента.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Чтобы выяснить, почему код не работает, первым делом необходимо проанализировать сам код и выявить возможные проблемы. Вот несколько шагов, которые можно предпринять для нахождения ошибок в коде:
1. Проверьте синтаксические ошибки: убедитесь, что все скобки, точки с запятой и другие символы используются правильно и нет лишних пробелов или символов.
2. Проверьте переменные: убедитесь, что все переменные объявлены и используются правильно. Проверьте, не перепутаны ли названия переменных или не произошло ли переопределение переменной.
3. Проверьте логику: просмотрите код и убедитесь, что логика программы верна. Возможно, есть ошибки в условиях или циклах, что приводит к неправильному выполнению кода.
4. Проверьте входные данные: убедитесь, что входные данные корректны и соответствуют ожидаемому формату. Некорректные данные могут привести к неправильной работе программы.
5. Используйте отладчик: запустите код в отладочном режиме и пошагово просмотрите его выполнение, чтобы выявить место, где происходит ошибка.
Приведу пример использования тега
для отображения кода на PHP: <pre lang="php">
Если после выполнения вышеуказанных шагов проблема не будет решена, рекомендуется задать вопрос на форуме или в сообществе разработчиков. Укажите как можно больше информации о проблеме и коде, чтобы другие пользователи могли помочь вам найти решение.