关于这条语句divs[this.id].style.display="block";大家怎么理解?

来源:1-4 js实现切换效果

小李子同學

2015-04-09 11:08

<script type="text/javascript" >
	function getE(id){
	return document.getElementById(id);
	}
	window.onload=function(){

		var titles=getE("box_nav").getElementsByTagName("li");
		var divs=getE("box_cont").getElementsByTagName("div");
		if(titles.length!=divs.length){
			return;
		}
		//遍历box_nav下所有的li
		for (var i = 0; i < titles.length; i++) {
			titles[i].id=i;
			titles[i].onmouseover=function(){
				for (var j = 0; j < titles.length; j++) {
					//清除li上所有的样式
					titles[j].className="";
					//当鼠标移到相应的li时,把与其不对应的div内容块隐藏	
					divs[j].style.display="none";
				};
				//设置鼠标移到当前li上的样式
				this.className="select";
				//设置鼠标移到当前li时,找到相对应的div的内容
				divs[this.id].style.display="block";
			}
		};
	}	
</script>

写成divs[i].style.display="block";为啥不行?不可以直接调用divs的下标么?

写回答 关注

2回答

  • 丿丫丫
    2015-04-09 12:19:37

    上面不是有给titles加上一个叫id的属性吗。。所以。titles【i】.id就代表i

    在下面this属于谁。this就是谁。在这里就是titles

    丿丫丫 回复追觅梦初的国...

    理解就好啊,哈哈

    2015-12-27 17:25:06

    共 2 条回复 >

  • 小李子同學
    2015-04-09 11:09:08

    感觉对这个this不是很理解。。。

Tab选项卡切换效果

本课程详细介绍网页页面中最流行常用的tab切换效果

65469 学习 · 533 问题

查看课程

相似问题