2

在我的主页上,有一个指向用户显示页面的链接

<a id="event_shortcut" href="http://localhost:3000/users/1#event_tab">show events</a>

在用户的节目中,我使用了引导选项卡,

<ul id="user_show_tabs">
    <li >
        <a href="#profile_tab">Profile</a>
    </li>
    <li>
        <a href="#event_tab">Events</a>
    </li>
    <li class="active">
        <a href="#account_tab">Account</a>
    </li>
</ul>

当我单击链接时,它应该转到用户的显示页面,并且事件选项卡应该在 foucs 中。所以在js中我确实喜欢这样,

$("#event_shortcut").live("click", function(event){
    event.preventDefault(); 
    window.location = $(this).attr("href"); 
    $('#user_show_tabs a[href="#event_tab"]').tab('show');
});

此 js 代码将用户重定向到显示页面,但未设置事件选项卡焦点。我不知道我错过了什么。帮我!

4

2 回答 2

2

当您重定向到另一个页面时,选项卡列表正在刷新。您要么需要输入逻辑以仅class="active"在当前页面的选项卡上显示 ,要么您需要使用该tab-content方法并将所有页面加载到单独的内容 div 中,因此选项卡实际上不会离开页面更改<div>正在显示的内容。

查看 Bootstrap 的 Javascript 部分以获取有关如何执行此操作的更多信息。http://twitter.github.com/bootstrap/javascript.html#tabs

于 2012-08-31T12:34:37.550 回答
0

在视图中(这是haml)

%ul
  li{:class => "#{check_if_active('release')}"
    = link_to "release", part_release_path(@current_organisation, @part)

并在助手中

def check_if_active(tab)
  case params[:controller]
  when "parts"
    if ['release'].include?(params[:action])
      tab == "properties" ? "active" : "null"
    end
end
于 2012-08-31T12:52:29.347 回答