【问题标题】:Can IntroJS 'refresh' the highlighted elements after the intro is started?介绍开始后,IntroJS 可以“刷新”突出显示的元素吗?
【发布时间】:2013-11-12 20:17:13
【问题描述】:

在使用 introJS 和 Backbone 视图时遇到问题: 我设置 introJS 的代码是这样的:

introJs.setOptions({steps: [
  {element:"#id1", intro: "something about id1"},
  {element:"#id2", intro: "something about id2"},
]});

但是在第一步中,如果用户在突出显示的区域(#id1)中做了什么,“#​​id2”元素将被主干视图重新渲染,导致 introJS 在进入第 2 步时失败。

有没有办法在介绍的中途“刷新”元素,这样在我的情况下,即使在介绍开始后重新生成 #id2 也可以被 introJS 找到?

【问题讨论】:

    标签: javascript web intro.js


    【解决方案1】:

    如果您仅将 inroJS 用作 UI 演练,那么您可以执行以下操作

    introjs.onbeforechange(function(targetElem){
        var jqElem = '#' + targetElem.id;
        $(jqElem).addClass('handle-events');
    });
    

    introjs.oncomplete(function() {
        $('.handle-events').removeClass('handle-events');
    });
    

    在css中你可以添加以下行

    .handle-events {
        pointer-events: none;
        cursor: default;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-29
      • 2013-03-12
      • 2019-09-14
      • 1970-01-01
      • 2016-10-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多