Распространенной ошибкой JavaScript является ввод функции , вызывающей , когда требуется ссылка на функцию (обычно для настройки обработчика событий, но есть и другие подобные случаи).
Таким образом
this.scrollable_div.scroll(this.slideIt());
вызовет , вызовет функцию this.slideIt()
и передаст возвращаемое значение методу .scroll
, и это явно не то, что нужно. ()
после this.slideIt
это то, что вызывает это, поэтому this.slideIt
без ()
необходимо.
Теперь, когда это сделано, следующая проблема будет в том, что связь с this
будет потеряна. Существуют различные вопросы о Stackoverflow с длинными подробными ответами о том, как работает this
. Здесь достаточно сказать, что необходимо убедиться, что this
установлен правильно:
this.scrollable_div.scroll(this.slideIt.bind(this));
(Есть другие способы сделать это, но это должно сработать.)