先跑一下程序再回答把,可以把下面2句注释掉,不是下面2句的问题
else
menu.style.display="none";
else
menu.style.display="none";
解决方案 »
- 请问:后台用UTF-8进行编码的文本,传递到前台页面,前台用JS如何让进行解码还原?
- 关于多个不同ID的DIV 需调用不用 JS函数 的问题、、
- innerHTML在IE8下出现奇怪的事情:option前部分不见了,请大家帮忙
- 文件问题
- 怎样调用预先存储在字典中的方法?
- javascript select的 值填入 text
- 多窗口浏览器无法激活onbeforeunload或onunload事件?
- 求助 (java + xml + js 达人请进!!!)
- flash影片是不是总在最顶层?我写了一个移动的层,<div>的,总是被flash遮住!能解决吗??
- 有那位知道有关视频在线播放....
- radio button的判断问题
- 层移动兼容问题
前面还这样作过
<html>
<head>
<script>
function pop(i)
{
var menu = document.getElementsByTagName("ul");
var len = document.getElementsByTagName("ul").length;
var k = len - i;
if(menu[k].style.display=="none")
menu[k].style.display="block";
else
menu[k].style.display="none";
//var len = document.getElementsByTagName("ul").length;
var html = "";
for(var j = 2; j >= 1; j--)
{
html = html + "<li onClick='pop(" + (i + j - 1) + ")'>123</li><ul style='display:none'></ul>";
}
menu[k].innerHTML = html;
}
</script>
</head>
<body>
<ul><%
for(int i = 3; i >= 1; i--)
{
%>
<li onClick="pop(<%=i%>)"><%=i%><script>document.write(document.getElementsByTagName("ul").length);</script></li>
<ul style="display:none">
</ul>
<%}%></ul>
</body>
</html>由于参数关系复杂,没成功,放弃了.任何人能把2个程序之一首先修改成功都可以得50分
又调用了一遍根节点的pop事件,所以点不下去了只要在function pop(id)中加一句event.cancelBubble = true;即可function pop(id)
{
event.cancelBubble = true;
var menu = document.getElementById(id); if(menu.style.display=="none")
menu.style.display="block";
else
menu.style.display="none"; var html = "";
var id2 = "";
for(var j = 1; j <= 2; j++)
{
id2 = id + j;
html += " <li onclick=pop('"+id2+"')>123</li ><ul id='"+id2+"' style='display:none'> </ul >";
}
menu.innerHTML = html;
//document.write(id2);
}