Jquery Tab坚持

时间:2012-08-18 21:24:18

标签: jquery tabs

$('li > a').click(function (event, ui) {
    location = $(this).attr('href');
    if (location != "gala") {
        actions.load_location(location);
    } else {
        actions.bp_gala();
    }
});

or

$("#tabs").tabs(show: function (event, ui) {
    switch (ui.index) {
    case 0:
        actions.load_location("home");
        break;
    case 1:
        actions.bp_gala();
        break;
    case 4:
        actions.load_location("barcelona");
        break;
    case 5:
        actions.load_location("cruise");
        break;
    }
    //window.location.replace(ui.tab.hash);
}
});

我尝试添加event.stopPropagation()但事件似乎在第一次点击后冒泡/标签。在$(Document).ready和各种组合中尝试过,但似乎没有任何效果。关于这一点的更多信息是我正在创建第二个选项卡。当我重新加载特定位置时,我清除了子标签并重建它。这就是我将问题缩小到的地方。

1 个答案:

答案 0 :(得分:0)

$("#tabs").tabs({
show: function(event, ui) { 
switch(ui.index)
{
case 0:
$('#home').html('<div id="homeSubtabs"><ul></ul></div>');
actions.get_job_list("home");
  break;
case 1:
actions.bp_gala();
  break;
case 4:
$('#barcelona').html('<div id="barcelonaSubtabs"><ul></ul></div>');
actions.get_job_list("barcelona");
  break;
case 5:
$('#cruise').html('<div id="cruiseSubtabs"><ul></ul></div>');
actions.get_job_list("cruise");
  break;
}
       //window.location.replace(ui.tab.hash);
}
});

解决了!在动态创建子选项卡时,您需要清除我正在调用的函数外部的内容。正如你可以看到开关内的div。