Twitter bootstrap 引导程序巡更无法使用下拉列表

Twitter bootstrap 引导程序巡更无法使用下拉列表,twitter-bootstrap,bootstrap-tour,Twitter Bootstrap,Bootstrap Tour,我正在使用它浏览应用程序中的功能 我正在尝试使用本机引导下拉菜单使教程正常工作。下拉列表的内容是隐藏的,当巡演进行到这一步时,我会在下拉列表中添加CSS类“open”,这就是单击它时发生的情况。(标准引导行为)但它不会打开 我已经尝试了一切,试图让旅游附加到隐藏的元素,首先显示它,但似乎没有任何工作。我制作了一把小提琴,这样你就可以看到我试图解释的内容 // Instance the tour var tour = new Tour({ debug: true, storage:

我正在使用它浏览应用程序中的功能

我正在尝试使用本机引导下拉菜单使教程正常工作。下拉列表的内容是隐藏的,当巡演进行到这一步时,我会在下拉列表中添加CSS类“open”,这就是单击它时发生的情况。(标准引导行为)但它不会打开

我已经尝试了一切,试图让旅游附加到隐藏的元素,首先显示它,但似乎没有任何工作。我制作了一把小提琴,这样你就可以看到我试图解释的内容

    // Instance the tour
var tour = new Tour({
  debug: true,
  storage: false,
  steps: [{
    element: "#step1",
    title: "Settings",
    content: "Content of settings",
    placement: "bottom",
  }, {
    element: "#step2",
    title: "Title of my step",
    content: "Content of my step",
    placement: "bottom",

  }, {
    element: "#step3",
    title: "Title of my step",
    content: "Content of my step",
    placement: "bottom",
    onHidden: function() {
      $(".dropdown").addClass("open");
    },
  }, {
    element: "#step4",
    title: "Title of my step",
    content: "Content of my step",
    placement: "bottom",
    onShow: function() {
      $("#dropdown").addClass("open");
    },
  }]
});

if (tour.ended()) {
  tour.restart();
} else {
  tour.init();
  tour.start();
}

任何帮助都将不胜感激


如果您想在boostrap下拉列表中添加巡更功能,请多谢:

  • 删除onHidden:function(){…onShow
  • 将as操作添加到下拉选项中
相反,如果您的问题是从巡更操作以编程方式打开您遇到问题的下拉列表:当您隐藏第三个元素并显示第四个元素时,您同时(一个接一个地)调用“打开”和“关闭”下拉列表

我建议你采取不同的行动

实际上,如果问题在于在巡更结束时打开下拉列表,则可以在巡更结束时添加:

onShow: function(tour) {
    var cs = tour.getCurrentStep();
    if (cs == 2) {  // if last tour step...open the dropdown
        setTimeout(function() {
            $("#dropdown").addClass("open");
        }, 100)
    }
}
代码段(已更新):

//
//选择下拉菜单选项执行操作。。。。
//
$('step4')。在('click',函数(e)上{
开关(如target.textContent){
案件‘行动’:
var cs=tour.getCurrentStep();
如果(cs==3 | | tour.end()){
tour.end();
tour.restart();
}否则{
tour.next();
}
打破
“另一项行动”案例:
//做事
打破
}
})
//举例说明这次旅行
var tour=新的tour({
是的,
储存:假,
步骤:[{
元素:“#步骤1”,
标题:“设置”,
内容:“设置内容”,
位置:“底部”
}, {
元素:“#步骤2”,
标题:“我的步骤的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}, {
元素:“#步骤3”,
标题:“我的步骤的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}, {
元素:“#步骤4”,
标题:“我的第1111步的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}],
onShow:功能(巡演){
var cs=tour.getCurrentStep();
如果(cs==2){
setTimeout(函数(){
$(“#下拉列表”).addClass(“打开”);
}, 100)
}
}
});
if(tour.end()==true){
tour.restart();
}否则{
tour.init();
tour.start();
}
ul.nav{
边框:1px纯黑;
左边距:5px;
显示:内联块;
}
#步骤1{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#eeeeee;
位置:绝对位置;
左:0;
顶部:150px;
}
#步骤2{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#666666;
位置:绝对位置;
左:210像素;
顶部:150px;
}
#步骤3{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#1c90f3;
位置:绝对位置;
左:420px;
顶部:150px;
}

下拉列表

如果要将巡更功能添加到boostrap下拉列表中:

  • 删除onHidden:function(){…onShow
  • 将as操作添加到下拉选项中
相反,如果您的问题是从巡更操作以编程方式打开您遇到问题的下拉列表:当您隐藏第三个元素并显示第四个元素时,您同时(一个接一个地)调用“打开”和“关闭”下拉列表

我建议你采取不同的行动

实际上,如果问题在于在巡更结束时打开下拉列表,则可以在巡更结束时添加:

onShow: function(tour) {
    var cs = tour.getCurrentStep();
    if (cs == 2) {  // if last tour step...open the dropdown
        setTimeout(function() {
            $("#dropdown").addClass("open");
        }, 100)
    }
}
代码段(已更新):

//
//选择下拉菜单选项执行操作。。。。
//
$('step4')。在('click',函数(e)上{
开关(如target.textContent){
案件‘行动’:
var cs=tour.getCurrentStep();
如果(cs==3 | | tour.end()){
tour.end();
tour.restart();
}否则{
tour.next();
}
打破
“另一项行动”案例:
//做事
打破
}
})
//举例说明这次旅行
var tour=新的tour({
是的,
储存:假,
步骤:[{
元素:“#步骤1”,
标题:“设置”,
内容:“设置内容”,
位置:“底部”
}, {
元素:“#步骤2”,
标题:“我的步骤的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}, {
元素:“#步骤3”,
标题:“我的步骤的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}, {
元素:“#步骤4”,
标题:“我的第1111步的标题”,
内容:“我的步骤的内容”,
位置:“底部”
}],
onShow:功能(巡演){
var cs=tour.getCurrentStep();
如果(cs==2){
setTimeout(函数(){
$(“#下拉列表”).addClass(“打开”);
}, 100)
}
}
});
if(tour.end()==true){
tour.restart();
}否则{
tour.init();
tour.start();
}
ul.nav{
边框:1px纯黑;
左边距:5px;
显示:内联块;
}
#步骤1{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#eeeeee;
位置:绝对位置;
左:0;
顶部:150px;
}
#步骤2{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#666666;
位置:绝对位置;
左:210像素;
顶部:150px;
}
#步骤3{
高度:200px;
宽度:200px;
利润率:10px;
背景色:#1c90f3;
位置:绝对位置;
左:420px;
顶部:150px;
}

下拉列表

谢谢这帮了大忙。谢谢