如何添加'Done'按钮,位于多页导览的最后一步
How to add a 'Done' button at the final step of multipage intro.js tour?
我已经成功地设置了一个多页旅游与介绍。js在最后一步,我不能有"完成"按钮显示。我目前有一个按钮到主页。我怎样才能添加"完成"按钮?
最后一页的脚本(只包含游览的最后一步):
$(document).ready(function() {
areComponentsReady();
if(window.location.href.indexOf("multipage=true") > -1) {
introJs().setOption('doneLabel', 'Back to start').start().oncomplete(function() {
window.location.href = "/myhomepage"
});
}
});
为了做到这一点,你必须编辑introjs文件本身。你可以在纯js中创建自己的按钮,然后将其附加到buttonLayers中(正如你将在introjs文件中看到的那样)。然后你就能在视图中看到了。现在您需要做的是让按钮播放onclick函数,该函数将关闭introjs视图。或者你也可以做相反的事情,新按钮会加载你的主页,然后你可以不去管完成页面。
下面是我编写的示例代码:
var btn = document.createElement("BUTTON");
var t = document.createTextNode("CLICK ME");
btn.appendChild(t);
// I have added the button append here because by default this is what intro js will do
if (this._introItems.length > 1) {
buttonsLayer.appendChild(prevTooltipButton);
buttonsLayer.appendChild(nextTooltipButton);
buttonsLayer.appendChild(btn);
}
这是我用codepen做的一个样品。
还记得让按钮的css也应用到您的按钮,并做必要的更改
var btn = document.createElement("BUTTON");
var t = document.createTextNode("CLICK ME");
btn.appendChild(t);
// I have added the button append here because by default this is what intro js will do
if (this._introItems.length > 1) {
buttonsLayer.appendChild(prevTooltipButton);
buttonsLayer.appendChild(nextTooltipButton);
buttonsLayer.appendChild(btn);
}
上面的代码很好。
相关文章:
- 使用Booklet Jquery插件,我如何验证最后一页是否显示
- jQuery分页下一页和上一页按钮在点击零或超过最后一页后失败
- 如何为AngularJS制作智能表中第一页和最后一页的跳过按钮
- Parsley.js,多步骤表单,在移动到上一步时跳过验证
- 插件总是只得到最后一个实例,如何让它适用于多个元素
- 从mysql数据库中删除项目,然后返回最后一页
- 我有一系列的处方受试者(a->B->C->a),但最后一步不起作用
- 区分剑道网格上一页/下一页点击与转到第一页/最后一页点击事件
- Listjs为筛选后的最后一页生成按钮
- 如何在 UI 引导分页中禁用下一步按钮
- 有没有一种纯粹的Javascript方法可以将一个函数应用于多个元素的事件
- 到达最后一个元素时隐藏下一步按钮
- Chained Promise with Express:在最后一步中未收到任何数据
- 如何在多页面中制作一个 JavaScript 表单向导,其中包含下一页,并取消并返回并提交最后一页
- FuelUX向导组件-如何允许用户直接进入最后一步
- GitHub OAuth最后一步问题
- Javascript-只用于循环打印最后一次迭代
- AngularJS多步骤表单-按enter键应该会移动到下一步,并在最后一步提交
- 如何添加'Done'按钮,位于多页导览的最后一步
- 在jQuery UI多选下一步中突出显示一个项目