Не работает меню
Почему IE не хочет хавать этот код?
(function () { var nodes = document.getElementById('menu').getElementsByTagName('a'); for (var i = 0; i < nodes.length; i++) { nodes[i].onmouseover = function () { if (this.nextSibling.nextSibling.className == 'sbc') { document.getElementById('submenu').innerHTML = this.nextSibling.nextSibling.innerHTML; } else { document.getElementById('submenu').innerHTML = ''; } } } })(); В самом меню сначала прописаны ссылки, а за ними — скрытый див с содержимым подменю, содержимое которого вставляется чуть ниже самого меню при наводке мыши на пункт. |
Цитата:
|
Kolyaj, а как тогда писать нужно?
|
Проверять у nextSibling'ов nodeType (IE пробелы между тегами учитывает), а лучше заверстать по другому, чтобы легче было найти нужный элемент.
|
Решил проблему по-другому — для IE ставлю this.nextSibling, а для нормальных браузеров — this.nextSibling.nextSibling, всё работает.
Спасибо за наводку. |
Потом по какой-то причине пробелы между тегами у вас пропадут и скрипт перестанет работать.
|
Не пропадут.
|
Пропадут. Причем когда ты будешь в отпуске :)
|
У меня нет отпусков.
|
Часовой пояс GMT +3, время: 03:44. |