我正在尝试为我的网站切换菜单。但它不起作用。我希望当任何人点击链接时,一个菜单将打开,而不是一个新的页面。以下是一个html和 java脚本片段。切换菜单不起作用
<div>
<a href="http://directory/websites.jsp" class="menu_link">Menu</a>
<ul class="menu" id="websites">
<li><i>Stackexchange</i> <br/>
<a href="#">SE</a>
</li>
</ul>
</div>
JS:
window.onload = initAll;
function initAll() {
var allLinks = document.getElementsByTagName("a");
for(var i=0 ; i<allLinks.length ; i++) {
if(allLinks[i].className.indexOf("menu_link") > -1) {
allLinks[i].onclick = toggleMenu;
}
}
}
function toggleMenu() {
var start = this.href.lastIndexOf("/") + 1;
var stop = this.href.lastIndexOf(".");
var thisMenuName = this.href.substring(start,stop);
var thisMenu = document.getElementById(thisMenuName).style;
if(thisMenu.display == "block") {
thisMenu.display = "none";
} else {
thisMenu.display = "block";
}
return false;
}
我在哪里做的错误?
你的html不完整。 UL哪里包含你的隐藏选项 – Carlos 2012-08-08 06:18:18
把thisMenu.style.display代替thisMenu.display – Carlos 2012-08-08 06:22:56