Javascript 谢泼德导游JS isn';滚动

Javascript 谢泼德导游JS isn';滚动,javascript,Javascript,我想让牧羊人导游工作 我已经将ScrollTour设置为:true,无论是全局还是每个Shepherd tour站点,页面都会跳转。以下是一个例子: 我只是错过了一些明显的东西吗?我想您希望平滑地滚动到元素,而不是立即跳转?Shepherd使用DOM API元素.scrollIntoView()实现scrollTo。这并不能实现平滑滚动。不过,您可以添加自己的scrollToHandler。例如,使用jQuery,您可以将构造函数调用更改为: var tour = new Shepherd.

我想让牧羊人导游工作

我已经将ScrollTour设置为:true,无论是全局还是每个Shepherd tour站点,页面都会跳转。以下是一个例子:


我只是错过了一些明显的东西吗?

我想您希望平滑地滚动到元素,而不是立即跳转?Shepherd使用DOM API
元素.scrollIntoView()
实现scrollTo。这并不能实现平滑滚动。不过,您可以添加自己的scrollToHandler。例如,使用jQuery,您可以将构造函数调用更改为:

var tour = new Shepherd.Tour({
      defaults: {
        classes: 'shepherd-theme-square',
        scrollTo: true,
        scrollToHandler: function(e) {
          $('html, body').animate({
              scrollTop: $(e).offset().top
          }, 1000);
        }
      }
    });
这将生成一个动画滚动。(顺便说一句,有很多方法可以进行动画滚动。重点是展示如何注册这些方法之一。)

var tour = new Shepherd.Tour({
      defaults: {
        classes: 'shepherd-theme-square',
        scrollTo: true,
        scrollToHandler: function(e) {
          $('html, body').animate({
              scrollTop: $(e).offset().top
          }, 1000);
        }
      }
    });