#javascript
#javascript
Вопрос:
Я создал меню, используя js и css. У каждого li в ul верхнего уровня есть определенное фоновое изображение, а также конкретное изображение onmouseover.
Все работает нормально, ЗА исключением фона onmouseover всякий раз, когда у меня есть подменю под ним. Пожалуйста, проверьте вертикальное меню по следующей ссылке: http://www.balouta.com/Autostar3/testmenu/test.html
Используемый Javascript следующий:
var menuids=new Array("verticalmenu")
var submenuoffset=0
function createcssmenu(){
for (var i=0; i<menuids.length; i ){
var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
for (var t=0; t<ultags.length; t ){
ultags[t].parentNode.onmouseover=function(){
this.getElementsByTagName("ul")[0].style.right=this.parentNode.offsetWidth submenuoffset "px"
this.getElementsByTagName("ul")[0].style.display="block"
}
ultags[t].parentNode.onmouseout=function(){
this.getElementsByTagName("ul")[0].style.display="none"
}
}
}
}
if (window.addEventListener)
window.addEventListener("load", createcssmenu, false)
else if (window.attachEvent)
window.attachEvent("onload", createcssmenu)
Ответ №1:
Проблема в том, что при наведении курсора мыши на меню верхнего уровня отображается a
div (подменю), которое скрывает содержимое верхнего меню под ним, поэтому наведение курсора на a
(верхнего меню) не запускается .
Небольшим исправлением было бы удаление ширины для элементов, имеющих подменю.
удалите следующую строку : width: 225px;
(строка 81) в css
Сделайте то же самое для всех других меню, в которых есть подменю.