Логин:

Пароль:

Форумы
Общие вопросы
Document Object Model
Обсуждаем конференцию
Web Usability (test)

Общие вопросы

Тормозные меню

В конце концов я разобрался, как правильно сделать выпадающие слева меню, самостоятельно просекающие, что они пытаются вывалиться за нижнюю границу и подтягивающие себя вверх. Работает оно не только под ИЕ, но и под НН6. Но возникло у меня несколько связанных с этим вопросов:

1. Почему-то эти меню тормозят, особенно под НН. В случае когда НН нужно отрисовать меню над границей экрана, он вообще его постоянно перерисовывает, то правильно, то ниже границы. Все управление работает через две функции showMenu и hideMenu, которые навешаны на onmouseover и onmouseout соответственно, как внутри самого меню, так и внутри вызывающего меню. Т.е. <div id=parent-menu... onmouseover="showMenu ..." onmouseout="hideMenu..."><a href=.....></a></div> - вызов, <div id=menu-itself... onmouseover="showMenu ..." onmouseout="hideMenu...">menu items</div> - само меню. Использовать приходится именно div в вызове, так как НН не хочет реагировать ни на что иное в качестве объекта и выполняет код только на линки внутри, а так на всю область div. Так вот, все это почему-то ужасно тормозит, хотя кода там на копейки и структура простая.

2. Нетскейп 6 не реагирует даже на div, если внутри не стоит style="position=relative;". В свою очередь IE, если такая строка есть, начинает сходить с ума, и позаимствованная функция relPos начинает выдавать черт знает что для этого div-а. Конечно мне не составило труда добавить такую строку "if (ns6) document.getElementById(elemId).style.position = "relative";", но как-то это криво все-таки на мой взгляд. Есть идеи как с этим бороться?

3. Это вопрос скорее по HTML и CSS, но все же. Есть ли какой-нибудь дешевый способ сделать выравнивание (justify) ровно одной строки? То есть сделать так, чтобы первое слово начиналось в начале строки, а последнее заканчивалось в конце. Все эти навороты с div-ами и таблицами пришлось делать именно потому, что иначе невозможно сделать выровненные по обоим краям пункты меню. Только не предлагайте делать картинки или ставаить <pre>.
СообщениеАвторДата
shkin16.10.2001 01:48
Gilmour16.10.2001 10:59
shkin16.10.2001 18:59
Gilmour16.10.2001 20:56