手动触发bootstrap导航栏菜单点击事件

时间:2015-08-31 09:04:26

标签: jquery twitter-bootstrap twitter-bootstrap-3

我有一个要求,我必须手动触发bootstrap(v3.3.5)导航栏菜单的点击事件。我已经尝试了li的click事件以及li里面的标签,但是他们没有工作。下面是我的代码:

<div id="navbar" class="collapse navbar-collapse">
    <ul class="nav navbar-nav">
        <li role="presentation"><a href="index.html"><span class="menuicon home"></span><span class="menutittle">Home</span></a></li>
        <li id="li_contact"><a href="contact.html"><span class="menuicon contact"></span><span class="menutittle">Contact</span></a></li>
        <li id="li_watsNew"><a href="wats-new.html"><span class="menuicon fingerprint"></span><span class="menutittle">What's New</span></a></li>

        /// etc. . . .

Jquery代码:

$('#li_watsNew').click(); //doesn't fire

OR

$('#li_watsNew a').click(); //doesn't fire

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:3)

这行代码会将用户带到<a>所指向的位置:

window.location = $('#li_watsNew a').attr('href');

这个也会触发onclick事件:

$('#li_watsNew a')[0].click();

您的代码存在的问题是,它正在使用jQuery的click事件。在这种情况下,您需要原生的。 jQuery对象的$()[0]为您提供了DOM版本(第一个查询匹配)。你也可以使用jQuery的$().get(0),它完全等同于$()[0]