使用fullpage.js插件返回部分的主幻灯片

时间:2013-12-16 17:03:29

标签: jquery fullpage.js

好的,我正在尝试修改现有的fullpage.js插件(https://github.com/alvarotrigo/fullPage.js/)。

我需要的是当用户离开每个部分时,该部分应自动返回到该部分的主幻灯片。

例如,使用位于此处的我的测试网站:(http://trouve.thinkatmosphere.com)。如果我当前在'about'部分,我向右导航然后离开'about'部分并向下导航到'client'部分,当我返回'about'部分时,我需要它在第一部分该部分再次滑动。

如何修改以下代码以允许我执行此操作:

$.fn.fullpage.moveToSlide = function (index, slide) {
  var destiny = '';
  if(isNaN(index)) {
    destiny = $('[data-anchor="'+index+'"]');
  } else {
    destiny = $('.section').eq( (index -1) );
  }
  if (isNaN(index) && slide !== 'undefined') {
    scrollPageAndSlide(index, slide);
  } else {
    if (destiny.length > 0) {
      scrollPage(destiny);
    }
  }
};`

1 个答案:

答案 0 :(得分:1)

任何选项都无法做到。你需要为它修改插件,而不是你指出的功能。这样,用户将被重定向到给定的部分并滑动。您需要在用户不知情的情况下在后台进行移动。

您需要公开功能scrollSlider并使用您自己的代码(onLeaveafterLoad回调)进行调用

要使其公开,因此可以从初始化或任何其他外部代码访问,您需要从此更改函数的标题:

function scrollSlider(section, slide) {
    if (typeof slide != 'undefined') {
        var slides = section.find('.slides');
        var destiny = slides.find('[data-anchor="' + slide + '"]');
        if (!destiny.length) {
            destiny = slides.find('.slide').eq(slide);
        }

        landscapeScroll(slides, destiny);
    }
}

对此:

$.fn.fullpage.scrollSlider= function(section, slide){
  /// .... the same code as in the old function
}

然后,当前部分的onLeave,您可以为同一部分调用该函数,为0提供slide的值。

相关问题