//本方案是错误的。请参加楼下的帖子
function setup() {
var lis = document.querySelectorAll('ul li');
var i=0;
for (i = 0; i < lis.length; i++) {
lis[i].addEventListener('click', function(e) {
var i0=i; //把下面的i换成 i0
if (e.target.nodeName === 'LI') {
parent = e.target.parentNode;
parent.insertBefore(e.target,parent.firstChild);
console.log(this); //这里的this就是lis[i]
console.log(lis); //这里成功打印 lis , lis和i都是function外面的变量,为什么这样可以啊
//console.log(lis[i]);//这样不可以!!
}
});
}
}
【 在 Splunk (每天挖坟墓,不是你蹲就是我蹲) 的大作中提到: 】
: 大侠,我把代码稍微改了一下,就实现了
: 但是同样的var变量,为什么lis就可以 lis[i]不可以?
: 请看代码
: ...................
--
修改:a0123456789q FROM 183.95.135.*
FROM 183.95.135.*