我正在使用introJS,我们的模板设计师团队只能使用data-intro属性,但他们也使用制表符和其他javascript来隐藏或显示某些元素。
当运行introJS时,对于那些隐藏元素(隐藏或另一个选项卡),它会在左上角(0,0)位置显示指南。
有什么办法,我们可以跳过不可见的元素,但只使用属性方法。我们可以添加任何js文件,所以如果我们可以配置introjs一次来实现这个并包含该文件。
谢谢。
答案 0 :(得分:1)
好的,
所以我通过包装函数实现了它,并将其留给了其他有需要的人。
这是我的包装函数看起来像
runIntro: function(object){
$('[data-intro]:hidden').each(function(index,obj){
var $t = $(this);
$t
.attr({
'data-intro-hidden' : $t.attr('data-intro'),
})
.removeAttr('data-intro')
;
});
$('[data-intro-hidden]:visible').each(function(index,obj){
var $t = $(this);
$t
.attr({
'data-intro' : $t.attr('data-intro-hidden'),
})
.removeAttr('data-intro-hidden')
;
});
if(typeof object === undefined)
introJs().start();
else
introJs(object).start();
}
这样,我们仍然使用属性和隐藏元素被静音或跳过介绍。
为我工作很好:))