如何将click事件附加到Bootstrap选项卡?

时间:2015-03-28 11:39:44

标签: javascript jquery html css twitter-bootstrap


我的Bootstrap标签有问题。我想创建一个带有子菜单的基于选项卡的菜单。在所有选项卡上都附加了一个mouseenter事件,因此当我使用鼠标指针进入选项卡时,子菜单中会出现链接。但是有些标签不需要子菜单,所以我需要附加一个点击事件,它可以识别我点击的标签并将我重定向到页面。我使用以下代码附加了click事件:

 $('#mainTabPanel a').click(function (e) {
    e.preventDefault();

    var $destination = $(this);

    if ($destination.hash === "#about") {
        window.location.replace("http://stackoverflow.com");
    }
});

但它不起作用。你能救我吗?

修改

我在JsFiddle中做了一个例子: https://jsfiddle.net/Romanus91PL/a12m71pf/5/

当我点击“Bing Link”锚点时,他们会将我重定向到bing.com网站。我想将这样的事件也应用于About选项卡(当我点击它时,它应该将我重定向到bing网站。)

2 个答案:

答案 0 :(得分:1)

请尝试下面给出的代码。它可以帮助你..

$(document).on( 'shown.bs.tab', 'a[data-toggle="tab"]', function (e) {
       console.log(e.target) // activated tab
    })

答案 1 :(得分:1)

如果我理解你的问题,那么

$(function () {
    $('#mainTabPanel a').mouseover(function (e) {
        e.preventDefault();
        $(this).tab('show');
    });

    $('#mainTabPanel a').click(function(e) {
        e.preventDefault();

        if (this.hash === "#about") {
            window.location.replace("https://bing.com");
        }
    });
});

https://jsfiddle.net/szepiet83/myqo4wx7/