我想在页面加载时初始化 Twitter Bootstrap 选项卡时附加一个操作(例如警报)。
我可以将操作附加到任何后续选项卡事件:
$('a[data-toggle="tab"]').on('show', function (e) {
alert('tab shown');
});
但我想在一开始就对事件“初始化”(或任何该事件的名称)做类似的事情。
我想在页面加载时初始化 Twitter Bootstrap 选项卡时附加一个操作(例如警报)。
我可以将操作附加到任何后续选项卡事件:
$('a[data-toggle="tab"]').on('show', function (e) {
alert('tab shown');
});
但我想在一开始就对事件“初始化”(或任何该事件的名称)做类似的事情。
与其尝试绑定无法实现的已初始化事件,不如通过删除data-toggle="tab"
来禁用自动初始化。
然后你把你自己的初始化,并添加一个回调来模仿事件调用。
$('#myTab .tab a').each(function() {
var $this = $(this);
$this.click(function (e) {
e.preventDefault();
$this.tab('show');
});
someCallback.call(this);
});
<ul class="nav nav-tabs" id="myTab">
<li class="active tab"><a href="#home">Home</a></li>
<li class="tab"><a href="#profile">Profile</a></li>
<li class="tab"><a href="#messages">Messages</a></li>
<li class="tab"><a href="#settings">Settings</a></li>
<li><a href="#">Regularlink</a></li>
</ul>
当然有一种更标准的方法来处理事件和所有事件,但这很简单,也很容易实现。