为什么将$(this)作为参数传递不起作用

时间:2016-10-24 20:20:47

标签: jquery html

如何以下一行:

pop = setInterval(function () { doSlide($(this)) }, settings.timeoutSet); 

未发送正确的参考作为参数。

我想设置与AutoSlide(theObj2)函数中注释掉的部分相同的功能,但是使用作为函数选择器发送的类但它不起作用。我一直将[object][Object]作为控制台日志。

如何解决问题,以便自动滑动功能正常工作。

1 个答案:

答案 0 :(得分:1)

超时在window的上下文中运行,除非另有说明,因此在回调中this不再指向该元素,而是window

相反,您可以将回调绑定到元素,即设置其上下文。

setInterval(function () { AutoSlide($(this)) }.bind(this), settings.timeoutSet);