有人可以告诉我这个插件的工作原理http://bootstraptour.com/api/吗?我有一步,我想重定向到动态网址。所以我写onNext回调,看起来像下面的代码。重定向工作正常,但在下一个网站上,我看到同样的步骤。不是下一个,而是同样愚蠢的一步。有人能告诉我这段代码有什么问题吗?它让我发疯了......
{ // 18
orphan: true,
title: "Zakázky",
content: "Výborně, Vaše první zakázka je založena. Klikněte na její modrý název pro pokračování.",
path: basePath + '/commission',
onNext: function () {
var commissionId = $('.tour-commission-detail').first().data('id');
if( ! commissionId )
{
alert('Nejdříve musíte založit aspoň jednu zakázku');
tour.prev();
return;
}
document.location.href = basePath + '/commission/overview/' + commissionId;
return (new jQuery.Deferred()).promise();
}
},
{ // 19
orphan: true,
title: "Zakázky",
content: "Nyní se nacházíte na přehledu zakázky. Vidíte zde všechny základní informace. <br>V dalších krocích doplníme " +
"na zakázku zaměstnance, materiál a další náklady."
}
答案 0 :(得分:1)
问题出在这一行
return (new jQuery.Deferred()).promise();
但是,有必要在重定向之前不要打开模式。
解决问题
{ // 18
orphan: true,
title: "Zakázky",
content: "Výborně, Vaše první zakázka je založena. Klikněte na její modrý název pro pokračování.",
path: basePath + '/commission',
onNext: function () {
var commissionId = $('.tour-commission-detail').first().data('id');
if( ! commissionId )
{
alert('Nejdříve musíte založit aspoň jednu zakázku');
tour.prev();
return;
}
document.location.href = basePath + '/commission/overview/' + commissionId;
return (new jQuery.Deferred()).promise();
},
onHidden: function(tour) {
tour.setCurrentStep(18);
}
},
{ // 19
},
{ // 20
orphan: true,
title: "Zakázky",
content: "Nyní se nacházíte na přehledu zakázky. Vidíte zde všechny základní informace. <br>V dalších krocích doplníme " +
"na zakázku zaměstnance, materiál a další náklady."
}
说明
onHidden 函数会将步骤18标记为当前,以防止其重复。但是,这将导致跳过步骤(在本例中为步骤19)。
然后,如上例所示,将第19步留为空白,因此当按下后退按钮时,将发现第19步为空白,并跳至第18步。