[英]Twitter Bootstrap tab shown event not firing on page load
在我有n 個選項卡和以下腳本的頁面中(coffeescript,我檢查了編譯的 javascript,它似乎沒問題)...
$ ->
init()
init = ->
$('a[data-toggle="tab"]').on 'shown', (event) ->
shown = event.target
console.log("Showing tab: " + shown)
現在,'shown' 事件不會在頁面加載時觸發,因此對於頁面上顯示的第一個選項卡,無法處理此問題(即:通過 xhr 加載內容)
我嘗試將其添加到上述腳本中,以查看手動觸發它是否可行:
$('a[data-toggle="tab"]:first').tab 'show'
......但它沒有。
這是我在視圖中使用的 HTML 代碼
<div class="tabbable">
<ul class="nav nav-tabs">
<li class="active">
<a href="#updates" data-toggle="tab"><%=t :updates, :scope => 'user.profile.sections'%></a>
</li>
<li class="">
<a href="#activity" data-toggle="tab"><%=t :activity, :scope => 'user.profile.sections'%></a>
</li>
<li class="">
<a href="#articles" data-toggle="tab"><%=t :articles, :scope => 'user.profile.sections'%></a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="updates">
</div>
<div class="tab-pane" id="activity">
</div>
<div class="tab-pane" id="articles">
</div>
</div>
</div>
有什么線索嗎?
當您告訴頁面顯示選項卡時,您可以手動觸發事件:
$('a[data-toggle="tab"]:first').trigger("shown.bs.tab");
我認為您正在混合 Bootstrap Javascript Toggable 選項卡和由類和 ID 管理的基本選項卡
如果您想使用 Javascript 來管理選項卡,您應該從 LI 元素上的錨點中刪除 data-toggle="tab",如下所示: http : //getbootstrap.com/2.3.2/javascript.html#tabs
您可以將語法與基本選項卡進行比較: http : //getbootstrap.com/2.3.2/components.html#navs
在我之后
$("#modal").modal('show');
我添加了這個,它工作得很好:
$('a[data-toggle="tab"]:first').click();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.