我正在为我的网站尝试切换菜单。但它没有用。我希望当有人点击链接时,会打开一个菜单而不是新页面。以下是一个HTML和 java script snippet。
<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;
}
我在哪里犯了错误?
答案 0 :(得分:0)
<div>
<a href="http://directory/websites.jsp" class="menu_link">
<ul class="menu" id="websites">
<li><i>Stackexchange</i> <br/>
<a href="#" class="menu_link">SE</a>
<ul id="menu">
<li>abc...</li>
<li>abc...</li>
</ul>
</li>
</ul>
</div>