使用for循环和getElementsByTagName取元素是怎么个运行方式?
为什么用this.getElementSByTagName,为什么要赋值给_this?
为什么用this.getElementSByTagName,为什么要赋值给_this?
2017-05-11
同学,你要认真听讲啊!老师有解释很清楚的
this,指的是当前的a标签,也就是说,你鼠标移动到哪一个a标签,哪一个a标签才会有后续动作;而_this指的是当前a标签下的第一个i标签,也就是要做动画运动的那个图片所在的标签,为什么要用TagName?因为这样便于获取a标签下的i标签啊;如果你觉得像老师这样命名不好理解,你也可以把_this换成i也行,
var _this=this.getElementsByTagName('i')[0]; //this,即是当前鼠标移动到的a标签; //_this,即是当前鼠标移动到的a标签下的第一个i标签; //为什么代码后面要加索引呢?因为TagName获取的是数组,虽然本例中只有一个i标签,但还是得索引第一个i标签 showMove2(_this,{top:-40,opacity:0},function () { //这里,就是能看到,做运动的是i标签,而不是整个a标签 _this.style.top=30+'px'; showMove2(_this,{top:3,opacity:100})
举报