我只想将一个特定步骤的“overlayOpacity”选项更改为0.5。如何实现此功能并将该参数改回默认值?

示例,不起作用:

introJs().step2().setOption("overlayOpacity", 0.5);

if(introJs().step2()){
  introJs().setOption("overlayOpacity", 0.5);
}

最佳答案

API documentation of intro.js不太清楚,但是我在存储库中找到了一个示例,该示例可能会给您一个解决问题的方法:

  • 听步骤更改
  • 检查_currentStep是否等于所需的步骤

  • introJs().onbeforechange(function() {
      if (this._currentStep === 1) {
        introJs().setOption("overlayOpacity", 0.5);
      } else {
        introJs().setOption("overlayOpacity", 0.8);
      }
    });
    

    注意: The default parameter of overlayOpacity is 0.8,如果用户离开了所需的步骤,则应改回。请记住,此侦听器在更改步骤之前会触发回调函数。因此,我们需要currentStep === 1,而不是2。

    09-20 10:58