在实现控制条的收缩的时候for (var i = 0; i < aA.length; i++) { aA[i].onmouseover = function(){ var This = this; clearInterval(This.time); This.time = setInterval(function(){ This.style.width = This.offsetWidth + 8 + "px"; if(This.offsetWidth >= 160) clearInterval(This.time); }, 30) } aA[i].onmouseout = function(){ clearInterval(this.time); var This = this; this.time = setInterval(function(){ This.style.width = This.offsetWidth - 8 + "px"; if(This.offsetWidth <= 120) { This.style.width = '120px'; clearInterval(This.time); } }, 30) }onmouseover在使用this的时候一直都是使用重定义后的This,然而在onmouseout中却是直接使用this才能实现收缩的效果,请问this的使用有什么技巧和要求吗?
2 回答
舞有涵意
TA贡献1条经验 获得超0个赞
谢谢,我还想问问This不是已经指向外部的this了吗?那后面在函数内部都使用This不就可以了吗,为什么在移出鼠标触发事件的函数里面还要使用到this,而且如果使用重定义的This是实现不了效果的。
添加回答
举报
0/150
提交
取消