课程
/前端开发
/JavaScript
/JavaScript进阶篇
把tr[i]用this替换后就可以了呢
2016-08-19
源自:JavaScript进阶篇 9-22
正在回答
因为i早不是当初的i了,i随for变化变成了trs.length
水里有条鱼 回复 大块吃肉188 提问者
大块吃肉188 提问者 回复 水里有条鱼
大块吃肉188 提问者
把颜色改了!因为f2f2f2接近于白色
我也摔跟头了,除了用this,谁能给出其他的方案
学java的人肯定会在这个问题上摔个跟头的,java里之所以可以可以直接那么写是因为我们一般会声明函数外的变量为final的,然后函数里才能直接用。
把trs[i].style......改为this.style......
因为i是变化的,而且你的for循环写错了
举报
本课程从如何插入JS代码开始,带您进入网页动态交互世界
1 回答str_tr[i].setAttribute('onmouseover',document.all ? eval(function(){this.style.background="#f2f2f2"})
3 回答为什么我用row[i].style.backgroundColor没反应,只能用this.style.backgroundColor
2 回答var trs = document.getElementsByTagName('tr');和var tbody = document.getElementById('table').lastChild;trs = tbody.getElementsByTagName('tr');有什么区别吗?
2 回答为什么在改变背景函数中将this替换成trs[i]就改变不了行颜色了?求解
3 回答闭包写法的问题,get_ul_li[i].onmouseover=function(num){ return function(){ save_child=get_ul_li[num].childNodes[1] showIntor(save_child) } }(i)