Автор Тема: На странице блога не работает меню  (Прочитано 263 раз)

27 Май 2015, 14:19:47
  • Фрилансер
  • *
  • Сообщений: 194
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Шаблон Panda. Блог встроенный - Smart Blog. Поддержка presta 1.6.14

Именно на страницах Блога глючит меню

1) При наведении на пункт меню не работает не изменяется фон у кнопок. Стиль куда-то исчез. Проблема мелкая, можно сделать самому.
2) Не открывается подменю. Само подменю есть . У него стиль   display:none;  При наведении должно изменятся на display:block например. Но оно не работает. Т.е. при mouseover ничего не происходит.  Видимо JS блога както перекрывает эту функцию. Вот где это событие и функцию искать ?  Надо просто выполнить функцию jquery  toggle() походу

Проверял в Firefox в дебагере. Нашел функцию megaHoverOver . На всех страницах она вызывается, на страницах блога не вызывается. Почему ? Явно какаято другая функция перегружает её, а как ее найти в 100 файлах престы ?

И как работает поиск в Firebug - он там вообще не работает нигде.
Есть ли какой-нибудь такой дебагер в каком-нибудь браузер, чтобы показал все функции повешанные на события обьекта ? Как CSS. Там показыавются все стили выбранного обьекта. А чтобы все события ? Это же так легко реализовать и так удобно . Вот сейчас бы узнал какая функция вызывается при событии mouseover . и в каком JS файле она находится. А сейчас мне приходится перебирать все JS файлы с поиском функции которая перегружает. Этоже адский труд.

Или както всё это по другому делается.

27 Май 2015, 14:52:59
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 21019
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Таких вопросов много, ответ на них один.

Firebug установить, запустить консоль.
Отладка javascript в firebug

Firebug установите, откройте консоль вебмастера, выделите этот блок и увидите где находятся стили блока.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
27 Май 2015, 15:00:17
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 14064
  • Репутация: +14569/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
Нашел функцию megaHoverOver . На всех страницах она вызывается, на страницах блога не вызывается. Почему ?
Потому что не подключается файл, в котором описана эта функция. Проверить нужно подключение этого файла.

Цитировать
И как работает поиск в Firebug - он там вообще не работает нигде.
В правом верхнем углу окно поиска.

Цитировать
Есть ли какой-нибудь такой дебагер в каком-нибудь браузер, чтобы показал все функции повешанные на события обьекта ?
Firebug  как раз и может показать.
27 Май 2015, 15:07:31
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 14064
  • Репутация: +14569/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
Самый лучший на текущий момент многоцелевой отладчик/инспектор для Firefox, который умеет массу полезного. Обязательный помощник в разработке.
Про Firebug много написано. Вот что пишут почти везде

Отладка кода с помощью Firebug
Современная отладка JavaScript
Редактирование и отладка javascript
Отладка JavaScript для начинающих
27 Май 2015, 17:49:54
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если при подключении одного модуля не работает другой, то это конфликт версиий js библиотек или названий классов, ид. Легко проверяется в коде этих модулей. Поиск по содержимому файлов выдаст одинаковые названия ID. Версия js библиотек видна в названии файлов.
30 Май 2015, 12:39:25
Ответ #5
  • Фрилансер
  • *
  • Сообщений: 194
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Как-то на абум решил проблему, но работает ... просто скопировал функцию megaHoverOver   в global.js  и всё.

Цитировать
Firebug  как раз и может показать.

Перерыл всё . Не нашел. Может только IE 11 - вкладка Events. В Firebug  и Chrome такой нет. Но по любому с Jquery оно не поможет. Все события хранятся в переменных jquery и прост так их не достать.


Поиск. Он ищет только CSS селекторы.  Как просто текст найти ...  И опять таки IE 11 ищет как и положено.
30 Май 2015, 13:04:01
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
По Jquery поиск не нужен. Для Jquery есть справка на сайте jquery.com, там все описано.
Про IE не знаю, не использую. В основном работаю FF и Chrome. По js коду искать можно так, в firefox выбрать вкладку Script, в поиске указать селектор/функцию и поиск будет вестись по js файлам. При нахождении, в правом окне покажет события/значения. Сразу можно установить точки остановки для отладки.
30 Май 2015, 13:10:57
Ответ #7
  • Фрилансер
  • *
  • Сообщений: 113
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля