我想设置时间让我的子菜单在使用JavaScript一段时间后消失。我的代码是:如何让我的子菜单在一段时间后消失?
function buildsubmenus(){
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.getElementsByTagName("a")[0].className="subfolderstyle"
if (ultags[t].parentNode.parentNode.id==menuids[i])
//if this is a first level submenu
//dynamically position first level submenus to be width of main menu item
ultags[t].style.left=ultags[t].parentNode.offsetWidth+"px"
else
//else if this is a sub level submenu (ul)
//position menu to the right of menu item that activated it
ultags[t].style.left=ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px"
ultags[t].parentNode.onmouseover=function(){
this.getElementsByTagName("ul")[0].style.display="block"
if(this.getElementsByTagName("a").length == '1'){
this.getElementsByTagName("ul")[0].style.display="none"
}
}
function wait(){
setTimeout('times()', 5000)
}
ultags[t].parentNode.onmouseout=function times(){
this.getElementsByTagName("ul")[0].style.display="none"
}
}
for (var t= ultags.length-1; t>-1; t--){ //loop through all sub menus again, and use "display:none" to hide menus (to prevent possible page scrollbars
ultags[t].style.visibility="visible"
ultags[t].style.display="none"
}
}
}
和我的功能,我想一定时间后显示为times()
,但每当我做onmouse
它直接调用它,它不会等待时间来算。
可以使一个小题目更清晰?我认为它吓跑了可能的回答者。 – 2009-07-01 14:36:19
唐纳德:我让你的问题标题更有意义,这使得你更有可能得到一个很好的答案,并有助于让你的问题(以及任何答案)对SO社区更有用。祝你好运与您的查询:) – 2009-07-01 14:49:54