iscroll icon indicating copy to clipboard operation
iscroll copied to clipboard

fastclick and iscroll

Open zcoding opened this issue 9 years ago • 0 comments

iOS上click事件存在300ms延迟的BUG,通过FastClick可以解决。 然而,使用FastClick会给IScroll带来一个问题:

FastClick.attach(document.body);
var myScroller = new IScroll('#container', {scrollX: true, scrollY: false});
document.getElementById('trigger').addEventListener('click', function(evt) {
  myScroller.scrollTo(-300, 0, 500);
});

myScroller.scrollTo(-300, 0, 500);这一句的意思是希望滚动到(-300,0)的位置,时间为500ms,然而并没有什么卵用,虽然能够滚动,但是500并不起作用。 研究发现是FastClick的问题,具体问题不知道为什么,但是可以通过下面的方法解决:

FastClick.attach(document.body);
var myScroller = new IScroll('#container', {scrollX: true, scrollY: false});
document.getElementById('trigger').addEventListener('click', function(evt) {
  setTimeout(function() {
    myScroller.scrollTo(-300, 0, 500);
  }, 0);
});

zcoding avatar Jun 03 '15 08:06 zcoding