 
		NJUcong
2017-01-21 09:58
	window.onload = function() {
        var obj1 = document.getElementById("ul1");
        var objli = obj1.getElementsByTagName("li");
        var adiv = document.getElementById("my_table");
        var divs = adiv.getElementsByTagName("div");
		for(var i=0;i<objli.length;i++){
			objli[i].index=i;
			objli[i].onclick = function(){
        	for(var j = 0; j < objli.length; j++) {
				objli[j].className = "";
				divs[j].className = "hide";
			}
			this.className = "active";
			divs[i].className = "show";//divs[this.index].className = "show";
			}
		}
		}为什么用语句:divs[i].className = "show";修改div的class就没有响应,改成注释就是正确的?
 
				这个i的外循环只会执行一次 之后i就不会变了 你点击事件以后i的值是一会保持不变的
 
				我只能说这个是 闭包的知识 。"divs[i].className"里的 i一直都是3
 
				我也是新手,我感觉你的代码这里问题出在"divs[i].className"里的 i 上,不如你alert一下这个i试试
JavaScript进阶篇
469065 学习 · 22582 问题
相似问题