IntroJS滚动不起作用

时间:2016-06-29 19:12:48

标签: javascript jquery html intro.js

我在我的页面上使用IntroJs来展示一个游览。总的来说一切正常,但是有一个问题:

在一个页面上,IntroJS无法滚动,因为我有类似于div的东西,它在div本身上滚动,所以整个页面都不滚动,但div是可滚动的。 现在,当我在当前可见的元素上定义巡视元素时,一切正常,但是如果你不得不在div中向下滚动,它就不再起作用了(它实际上试图向下滚动整个页面)并显示了在不知名的地方的步骤。

这就是我定义游览的方式:

this.intro = introJsModule.introJs();
    this.intro.setOptions({
      steps: [
        {
          intro: "Hello user!"
        },
        {
          element: '.checkbox',
          intro: "This is a checkbox"
        },
        {
          element: '#inputHor1',
          intro: "This input looks very nice."
        },
        {
          element: '#anotherID',
          intro: "This is the first section"
        }
      ]});
    this.intro.setOption('showStepNumbers', false);
  }

  startIntro() {
    this.intro.start();
  }

有什么方法可以解决这个问题吗?

PS:我的意思(在我的网站上)就像here。所以右边的部分是我定义步骤的部分,当需要向下滚动时它不起作用。实际上唯一的区别是,我的滚动条也位于"右边的#34;,所以我不会滚动整个页面。

2 个答案:

答案 0 :(得分:2)

我们能看到你正在使用的js吗?

猜测:

onscroll事件仅在以下情况下有效:

  • div有溢出:auto,overflow:scroll,overflow-y:scroll, 等。
  • div目前有一个可以滚动的可见滚动条。
  • 鼠标移动实际上会导致滚动条滚动。

您也可以尝试使用onmousewheel事件代替onscroll(如果您正在使用的话......)

答案 1 :(得分:0)

解决#801

请参阅此处的详细信息https://github.com/usablica/intro.js/pull/801