2016-10-24 2 views
-1

Как прийти в следующую строку:

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

не посылающие соответствующей ссылки в качестве параметра.

Я хотел бы настроить те же функции, что и в закомментированном разделе в функции AutoSlide(theObj2), но использовать класс, который был отправлен как селектор функции, но он не работает. Я продолжаю получать [object][Object] в качестве журнала консоли.

Как решить проблему, чтобы функция автоматического скольжения работала правильно.

+2

Есть уже некоторые вопросы достаточно, как ваш, смотри, например, http://stackoverflow.com/questions/346015/javascript-closures-and-this –

ответ

1

Таймауты работать в контексте window, если не сказано иначе, так что внутри обратного вызова this больше не указывает на элемент, но вместо этого window.

Вместо этого вы можете привязать обратный вызов к элементу, т. Е. Установить его контекст.

setInterval(function() { AutoSlide($(this)) }.bind(this), settings.timeoutSet); 
Смежные вопросы