Twitter Bootstrap:初始化时在选项卡上附加操作

Pau*_*aul 4 jquery twitter-bootstrap

我想在页面加载初始化时将操作(例如警报)附加到Twitter Bootstrap选项卡.

我可以将动作附加到任何后续的标签事件:

$('a[data-toggle="tab"]').on('show', function (e) {
    alert('tab shown');
}); 
Run Code Online (Sandbox Code Playgroud)

但是我想在开始时对事件'i​​nitialize'(或任何被调用的事件)做类似的事情.

She*_*row 7

您应该通过删除data-toggle="tab"来禁用自动初始化,而不是尝试绑定不实际实现的初始化事件.

然后你进行自己的初始化,并添加一个回调来模仿事件调用.

$('#myTab .tab a').each(function() {
    var $this = $(this);
    $this.click(function (e) {
        e.preventDefault();
        $this.tab('show');
    });
    someCallback.call(this);
});
Run Code Online (Sandbox Code Playgroud)
<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>
Run Code Online (Sandbox Code Playgroud)

当然有一种更标准的方法来处理事件和所有事件,但这很简单,易于实现.

示例(jsfiddle)