函数里第一行代码为什么获取的是lastChild??

来源:9-22 编程练习

这就尴尬了

2018-04-25 09:57

function Highlight(){

var tbody = document.getElementById('table').lastChild;

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";

}  

}


写回答 关注

2回答

  • xome
    2018-04-25 11:41:29
    已采纳

    整段代码意思是给最后一行实现要求一(1.鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff),没估计错的话,应该是给添加的新行的代码调用的

    这就尴尬了

    非常感谢!

    2018-04-25 11:45:56

    共 1 条回复 >

  • 全是想念
    2018-05-09 16:58:36

    但是最后一个子节点可能是空格组成的文本节点,这样获取可能会有问题,除非先把空节点去掉

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题