Я использую следующий фрагмент кода для обработки событий прокрутки с помощью плагина
handleScroll: function () {
var contentdiv = $(".gridcontent");
scrollTop = contentdiv.scrollTop();
var vScrollDist = Math.abs(scrollTop - prevScrollTop);
if (vScrollDist) {
vScrollDir = prevScrollTop < scrollTop ? 1 : -1;
prevScrollTop = scrollTop;
}
},
test:function(){
},
но я не могу вызвать метод теста из метода handlescroll (event). Можете ли вы заглянуть в это. Спасибо заранее
Поскольку вы пытаетесь привязать событие к методу в классе (по моему прототипу), вам понадобится привязать метод к this
или он будет ссылаться на глобальное состояние. Поэтому, когда вы добавляете слушателя, сделайте следующее:
contentdiv.bind("scroll", $.proxy(this.handleScroll, this));//or use fn.bind
Таким образом, это будет ссылаться на ваш экземпляр плагина, а не на окно.
$.proxy(this.handleScroll, this)
... и не нужно добавлять шим
handleScroll
, кто его называет и как?