Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Стационарный GMENU_LAYERS/TMENU_LAYERS (http://forum.typo3.ru/showthread.php?t=4079)

Fearless Goblin 16.07.2007 23:15

Стационарный GMENU_LAYERS/TMENU_LAYERS
 
Не успел закончиться день, как появилась ещё одна проблема. На сей раз с лэйерзами.
Вопрос вот в чём: как заставить подменю любого пункта меню появляться в одном и том же месте экрана? То есть, например, я хочу, чтобы меню второго уровня появилось в точке 200,300 не зависимо от того, навёл я стрелку на первый или второй пункт меню первого уровня.
Пробовал разные комбинации lockPosition, xPosOffset, yPosOffset, topOffset, leftOffset, но ничего не помогло.
Например, при такой конфигурации:
Код:

temp.topMenu.1 {
  leftOffset = 300
  yPosOffset = 20
  lockPosition = x
}

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

void 17.07.2007 01:49

Я бы рекомендовал не пользоваться xMENU_LAYERS. Это плохой, старый код. Существует множество меню, которые позволяют их использовать как обычные TMENU/GMENU в тайпе, без дополнительных ухищрений в виде LAYERS.
Я лично видел много задающих вопросы о LAYERS, но практически не видел ответов на них, и это, на мой взгляд, не случайно.

Fearless Goblin 17.07.2007 02:28

Я вот тоже это заметил...
Тогда не можете ли подсказать, как при наличии стандартных инструментов сделать так, чтобы при наведении на пункт меню менялось содержимое подменю?

void 17.07.2007 05:02

Простой способ: грузить все меню второго уровня, однако ставить оборачивающему тэгу каждого меню display:none.
Во врапе меню первого уровня указать событие onmouseover. Далее - дело знания JS.

Сложный способ: грузить меню только n-ного уровня. Затем по onmouseover опрашивать некую страницу для генерации меню типа
menupage = PAGE
menupage.typeNum = 222
menupage.config.disableAllHeaderCode = 1
menupage.10 = HMENU
и забирать её содержимое через AJAX, затем вставлять в нужное место с помощью JS.

В любом случае, это дело скорее программирования на JS, чем вопрос генерации тайпой HTML.

Fearless Goblin 17.07.2007 14:22

Большое спасибо! Будм расширять свои знания JS. :)


Часовой пояс GMT +4, время: 07:39.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot