如何用 intro.js 一步改变 'overlayOpacity'?

How to change 'overlayOpacity' just for one step with intro.js?

我只想将 'overlayOpacity' 选项更改为 0.5,仅用于一个特定步骤。我怎样才能实现此功能并将该参数更改回默认值?

不起作用的示例:

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

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

API documentation of intro.js 不是很清楚,但我在存储库中找到了一个示例,它可能会让您了解如何解决您的问题:

  1. 监听步骤变化
  2. 检查 _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.