您可以转到 Angular IntroJS 事件中的特定步骤吗?
Can you go to specific step within Angular IntroJS event?
似乎如果我尝试从 IntroJS onexit
事件中转到特定步骤,它会变得非常混乱并且不会显示正确的步骤和突出显示的元素。
我通过 json 设置了步骤,我有 8 个步骤
[{
element:
title:
intro:
}]
如果用户通过单击 X(跳过)按钮关闭导览,我需要显示最后一条消息,因此我已将其设置为通过 onexit
introJS.onexit(() => {
introJS.goToStep(8).start();
}
我们可以不在这里做吗?基本上发生的事情是它显示了正确的介绍文本,但它突出显示了来自不同步骤的完全不同的元素。这是因为我在事件中调用自己吗?
如果可能的话,人们会怎么做呢?
我什至尝试将选项设置为一组新的步骤 - 并将这些步骤拼接为仅包括我需要的单个步骤 - 这也不起作用。
introJs.setOptions({
steps: this.steps[lastStep]
});
introJs.start();
感谢@GRD,我能够通过使用 onbeforeexit
事件并确保 return false
来解决这个问题
introJs.onbeforeexit(() => {
introJs.goToStepNumber(lastStep).start();
introJs.refresh(true);
return false;
}
似乎如果我尝试从 IntroJS onexit
事件中转到特定步骤,它会变得非常混乱并且不会显示正确的步骤和突出显示的元素。
我通过 json 设置了步骤,我有 8 个步骤
[{
element:
title:
intro:
}]
如果用户通过单击 X(跳过)按钮关闭导览,我需要显示最后一条消息,因此我已将其设置为通过 onexit
introJS.onexit(() => {
introJS.goToStep(8).start();
}
我们可以不在这里做吗?基本上发生的事情是它显示了正确的介绍文本,但它突出显示了来自不同步骤的完全不同的元素。这是因为我在事件中调用自己吗? 如果可能的话,人们会怎么做呢?
我什至尝试将选项设置为一组新的步骤 - 并将这些步骤拼接为仅包括我需要的单个步骤 - 这也不起作用。
introJs.setOptions({
steps: this.steps[lastStep]
});
introJs.start();
感谢@GRD,我能够通过使用 onbeforeexit
事件并确保 return false
introJs.onbeforeexit(() => {
introJs.goToStepNumber(lastStep).start();
introJs.refresh(true);
return false;
}