首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不更新scrollToElement变量的iscroll currPage

不更新scrollToElement变量的iscroll currPage
EN

Stack Overflow用户
提问于 2011-11-15 17:49:28
回答 1查看 2.5K关注 0票数 6

更新:我能够让我的滚动器按预期工作,但我觉得我已经黑了实际的问题,如果有人有一个更可靠的答案,我会喜欢它,我已经更新并注意到在下面的新jQuery下面我正在使用的片段。

我使用iScroll-4 (http://cubiq.org/iscroll-4)来制作iPad/Android网络应用程序,所有的东西都能很好地使用滑动和滚动,但是我在应用程序的开头有一个目录,允许用户跳转到滚动器的特定区域--

为了跳转到不同的区域,我使用iScroll函数scrollToElement(element, duration)。还可以使用scrollToPage(page, duration),允许用户一次手动导航一个页面。

当我使用currPageX函数导航和滑动时,当我看到控制台记录scrollToPage变量更新时,但是当使用scrollToElement时,currPageX变量不会更新。

因此,如果我跳到一个元素,然后使用scrollToPage('next', 0)向前导航,它将向后移动,导航到目录后面的下一页。

我尝试过在scroll.refresh()之后使用scrollToElement函数,在此之前,将函数放置在超时中等等,但我不知道为什么currPageX没有更新。

下面是我使用的两个不同函数的jQuery代码片段:

代码语言:javascript
复制
  // TO NAVIGATE FORWARD AND BACKWARDS
  $('span.control').on('click', function() {
    var slideDir = $(this).attr('data-dir');
    if (slideDir == 'prev') {
      var tehPg = tehScroll.currPageX-1;
    } else if (slideDir == 'next') {
      var tehPg = tehScroll.currPageX+1;
    }
    tehScroll.scrollToPage(tehPg, 0);
    return false;
  });

  // TO JUMP FROM CONTENTS
  $('li[data-page="toc"] span').on('click', function() {
    var toPage = $(this).attr('data-page');
    tehScroll.scrollToElement('li[data-page="'+toPage+'"]', 800);
    // ADDED THE FOLLOWING LINE TO MANUALLY SET currPageX after scrolling!
    tehScroll.currPageX = $('#slides li[data-page="'+toPage+'"]').index();
    return false;
  });
EN

回答 1

Stack Overflow用户

发布于 2014-06-05 17:02:20

你考虑过使用jquery-移动-iscrollview小部件插件吗?-有一个函数scrollToPage(pageX,pageY,time),很适合我.

最好的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8140797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档