Плагин main_menu_mod для MaxSite CMS

Модифицировал плагин main_menu для MaxSite CMS (система управления содержимым сайта).

Оригинальный плагин имеет проблемы с браузером Opera версий 9 и 10 – в этих браузерах возможна некорректная работа JS, рассчитывающего положение подменю на странице.

Проблема

Проблема – некорректная работа JS. Я описывал ее на официальном форуме поддержки, поэтому здесь приведу лишь скриншот, демонстрирующий ошибочный подсчет положения подменю:

Видно, что подменю расположено существенно ниже, чем должно быть. В теме на форуме я привел скриншоты Opera 9 и 10 для темы BlueMania и дефолтной темы оформления.

Способ эмуляции ошибки:

  1. открываем любую страницу или кликаем на любой пункт меню
    (меню при этом выглядит нормально)
  2. нажимаем «обновить страницу»
    (возникает ошибка работы JS)

Проблема не только у меня: в посте про тему BlueMania посетитель отписал о проблеме в комментарии и на форуме о том же писал Wave.

Решение проблемы

Единственным решением мне виделось создание аналога плагина. Решил использовать jQuery Multi Level CSS Menu, т. к. он не имеет подобных проблем.

Демонстрация и скачивание

Плагин можно увидеть в действии на моем демонстрационном сайте.

Установка и настройка не отличается от стандартного main_menu, за исключением возможности показать/скрыть стрелочки для пунктов, имеющих подменю.


Связанные статьи

Комментарии (уже 8)

  1.  Денис (анонимно) (24.08.2010, 02:30)

    изначально пользовался этим jQuery Multi Level CSS Menu
    но он дает иногда такие же глюки. и иногда если быстро провести курсором по менюшке и остановиться на одной то выпадающих пунктов нет.
    потом стал пользоваться вот этим.
    http://www.dynamicdrive.com/dynamicindex1/chrome/index.htm
    вложенных меню нет, но работает гораздо стабильные.
    Ссылка на комментарий #1
    Ответить
  2.  Николай Громов (24.08.2010, 12:25)

    @ Денис (анонимно):
    я, последнее время, вообще склоняюсь к решениям на чистом CSS и к http://sandbox.leigeber.com/dropdown-menu/index.html (но там нет переноса пунктов на левую сторону, если подменю не влезает в экран).
    Ссылка на комментарий #2
    Ответить
  3.  Денис (анонимно) (25.08.2010, 01:20)

    Николай, это не чистый CSS, в нем есть скрипт. И это сразу видно, так как выпадание происходит с эффектами.
    Чистый не воспримет IE6. В нем только яваскриптовые менюхи.
    Ссылка на комментарий #3
    Ответить
  4.  Николай Громов (25.08.2010, 01:34)

    @ Денис (анонимно):
    более того, это видно по названию статьи, описывающей метод!
    Денис, неужели Вы думаете, что спустя 10 лет занятий веб-разработкой я не отличу чистый CSS от CSS+JS? :):):)
    просто внимательнее почитайте текст моего комментария: «...на чистом CSS и к...» то есть, к решениям на чистом CSS и к решениям на чистом JS (в смысле, без фреймворков).
    кстати, наконец, заработал сайт css-фреймворка с отличным валидным кроссбраузерным оформлением выпадающего горизонтального меню: http://css-framework.ru/demo/css-framework-content.html
    Ссылка на комментарий #4
    Ответить
  5.  Денис (анонимно) (25.08.2010, 01:45)

    не внимательно читал
    Ссылка на комментарий #5
    Ответить
  6.  alexsl (анонимно) (17.12.2011, 12:34)

    Здравствуйте, Николай. Применил ваш плагин. Есть такая структура в админке:
    [
    # | Медиа
    audio | Аудио
    video | Видео
    photo | Фото
    ]
    Но как сделать еще одно выпад меню например ролики с меню Видео?
    Ссылка на комментарий #6
    Ответить
  7.  Николай Громов (17.12.2011, 17:43)

    @ alexsl (анонимно):
    пункты и подпункты меню включаются в квадратные скобки.
    первый пункт внутри скобок — родитель остальных. это видно в примере с «Медиа».

    пример с вложенностью:

    [
    all-categories | Рубрики
    shablony | Шаблоны
    tipografika | Типографика
    verstka | Верстка
    [
    biologija | Биология
    nastojashhie-zhivotnye | Настоящие животные
    [
    vymyshlennye-zhivotnye | Вымышленные животные
    bezumnye | Безумные
    monstry | Монстры
    ]
    ]
    ]

    этот сегмент создает следующую структуру:
    рубрики
    - шаблоны
    - типографика
    - верстка
    - биология
    - - настоящие животные
    - - вымышленные животные
    - - - безумные
    - - - монстры
    Ссылка на комментарий #7
    Ответить
  8.  alexsl (анонимно) (17.12.2011, 20:46)

    Спасибо, принцип понятен.
    Ссылка на комментарий #8
    Ответить

Ваш комментарий

Комментарий будет опубликован после проверки.



При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где можно изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.







(обязательно)


Дополнительно

RSS-подписка

В этом блоге две категории