Bootstrap Twitter Dropdown:让父母点击链接

时间:2012-08-03 12:32:41

标签: jquery twitter-bootstrap

我有这个bootstrap twitter下拉菜单。我用click事件替换了click事件。 现在唯一的问题是应该关注www.google.com,但事实并非如此。我尝试过:

 jQuery(".nav .dropdown-toggle").click(function () {
      return true;
    });

但没有骰子。

以下是代码:

<html>
  <head>
    <title>text</title>
    <link type="text/css" rel="stylesheet"  href="docs/assets/css/bootstrap.css"/>
    <link type="text/css" rel="stylesheet"  href="docs/assets/css/bootstrap-responsive.css"/>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script type="text/javascript" src="js/bootstrap-dropdown.js"></script>
    <script type="text/javascript">
      $(function(){
        jQuery('.dropdown-toggle').dropdown();
        jQuery('ul.nav li.dropdown').hover(
        function() {jQuery(this).find('.dropdown-menu').stop(true, true).delay(200).fadeIn();},
        function() {jQuery(this).find('.dropdown-menu').stop(true, true).delay(200).fadeOut();}
      );

        jQuery(".nav .dropdown-toggle").click(function () {
          return true;
        });
      });
    </script>

  </head>
  <body>
    <ul class="nav nav-pills">
      <li class="dropdown">
        <a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="http://www.google.com">
          Dropdown
          <b class="caret"></b>
        </a>
        <ul class="dropdown-menu">
          <li><a href="#">text</a></li>
          <li><a href="#">text</a></li>
        </ul>
      </li>
    </ul>

  </body>
</html>

http://jsfiddle.net/rgdwM/

4 个答案:

答案 0 :(得分:16)

您可以通过稍微更改标记并添加CSS类来完成此操作。

将HTML标记更改为(** note 已禁用添加到下拉切换旁边):**

<a class="dropdown-toggle disabled" data-toggle="dropdown" data-target="#" href="http://www.google.com">
    Dropdown
    <b class="caret"></b>
</a>

如果您希望子菜单显示在悬停上(因为现在点击将转到指定的网址),请添加此CSS类:

.nav li.dropdown:hover .dropdown-menu
{
    display: block;    
}

这适用于Bootstrap版本2.3.1。

答案 1 :(得分:2)

不太确定你想要在这里实现的目标。

但这会让.click()带你去谷歌。

$(".nav .dropdown-toggle").click(function () {
  window.location = "http://www.google.com";
});

至于为什么<a>点击事件被吃掉,我目前不确定。

答案 2 :(得分:2)

如果您希望父母关注Wordpress上的链接,请使用以下命令:

    $(".nav .dropdown-toggle").click(function () {
    window.location = $(this).attr('href');
    });

答案 3 :(得分:0)

Bootstrap 3.0 docs说要使用data-target属性来保存可点击的链接。

因此,您的HTML将成为:

<a class="dropdown-toggle" data-toggle="dropdown" data-target="http://www.google.com" href="#">
    Dropdown
    <b class="caret"></b>
</a>