这段代码没太理解,求指教!

来源:9-22 编程练习

枫芒i

2018-06-19 17:25

 function Highlight(){     	
 var tbody = document.getElementById('table').lastChild;	
 //table节点的最后一个子节点不是最后一个tr节点嘛?怎么成数组了?		
 trs = tbody.getElementsByTagName('tr');   		
 for(var i =1;i<trs.length;i++){    			
 trs[i].onmouseover = function(){				
 this.style.backgroundColor ="#f2f2f2";			} 			
 trs[i].onmouseout = function(){				
 this.style.backgroundColor ="#fff";			} 		
 }
table节点的最后一个子节点不是最后一个tr节点嘛?怎么成数组了?

table节点的最后一个子节点不是最后的tr节点嘛?怎么成数组了?for循环里面的语句是什么意思呢?

写回答 关注

2回答

  • 慕数据6286186
    2018-07-23 21:10:52
    已采纳

    table节点的最后一个子节点应该是tbody,这个表格省略了thead和tbody,所以不好理解。

    枫芒i

    嗯嗯,浏览器解析的时候自动给表格加上了个tbody标签。

    2018-08-03 11:45:40

    共 1 条回复 >

  • qq_抛物线_0
    2018-07-04 13:51:26

    var tbody = document.getElementById('table')获取的是所有的子节点,所有的节点构成数组,你要得到最后一个节点相当于取数组的最后一个元素,数组a = [1,2,3,4,5,6],你要得到6这个元素就要这样写 a[5].for循环循环tr(行元素),你现在的trs里面只有一个tr

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题