natsu07
2016-10-16 23:37
链式调用中,第二个调用函数startMove(this,"someAttr",num)中不能直接用this。原因是this指向错误,这是由函数声明引起的。函数声明会进行函数提升,此时变为了全局函数。而this对象是在运行时基于函数的执行环境绑定的,那么this就指向了window,而不是当前的对象。如果“var this = this”,这时就可以使用this了。
————————————————————————————————————
以上摘自一条评论。
求解答,既然是全局函数为什么还能调用onmouseover事件函数里的this变量,这个全局函数和定义在最外面的函数一样吗?
看了红皮书的作用域链差不多明白了,是我搞混了
JS动画效果
113925 学习 · 1443 问题
相似问题