首页 > 解决方案 > 如何使用 intro.js 仅一步更改“overlayOpacity”?

问题描述

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

不起作用的示例:

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

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

标签: javascriptjqueryintro.js

解决方案


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

  1. 监听步骤变化
  2. 检查是否_currentStep等于所需的步骤
introJs().onbeforechange(function() {
  if (this._currentStep === 1) {
    introJs().setOption("overlayOpacity", 0.5);
  } else {
    introJs().setOption("overlayOpacity", 0.8);
  }
});

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


推荐阅读