2013-06-19 45 views
0

在下拉菜单上阅读twitter bootstrap的文档我看到它说你可以使下拉菜单保持不变。我试图做到这一点,但没有任何运气与它的工作。相反,它只是切换下拉菜单,而不是它应该发生的路径。我错过了什么?这是我的代码的一个例子。Twitter引导下拉切换和网址?

<li class="dropdown"> 
    <a class="dropdown-toggle" id="dPublisher" data-toggle="dropdown" role="button" data-target="#" href="publisher.php">PUBLISHER<b class="caret"></b></a> 
    <ul class="dropdown-menu" role="menu" aria-labelledbyid="dPublisher"> 
     <li><a href="eeditions.php">E-Editions</a></li> 
    <li><a href="digitalarchive.php">Digital Archive</a></li> 
    </ul> 
</li> 
<li><a href="blog.php">BLOG</a></li> 

在这个例子中PUBLISHER应该是下拉触发和链接,而博客只是一个链接。下拉菜单的工作和所有工作内部的链接,但我不能让网址保持不变,就像它在文档中说的。我不理解文档吗?

任何帮助将不胜感激!

+0

也许我不明白你的问题,但它似乎按预期工作:http://www.bootply.com/64937你能澄清你的意思是“保持完好”吗? – ZimSystem

+0

这就是为什么我想知道我是否不理解文档。 PUBLISHER的href实际上并不导航到它引用的页面。每次点击它,它都会打开并关闭下拉菜单,但不会重定向。我希望它打开下拉菜单,然后再次点击重定向到publisher.php。我是否正确理解文档,是否应该这样做? – fiercekitti

+0

我认为它可以导航到链接或切换下拉菜单,但不能同时打开。你可以使用jquery点击事件处理程序来处理你的特殊情况。 – ZimSystem

回答

0

如上所述,您可以使用onClick事件,但您希望它对移动视图禁用。

   $(document).ready(function(){ 
        $(window).resize(function(){ 
         if($(window).width() >= 920){ 
          $('.clickable-dropdown').on('click', function(){ 
           window.location.href=$(this).attr('href'); 
          }); 
         }else{ 
          $('.clickable-dropdown').on('click', function(){ 
           return false; 
          }) 
         } 
        }).resize(); 
       }); 

这将使下拉菜单以方便行动:如果您正在使用导航栏引导,比如,你可以添加一个“.clickable-下拉”类的切换触发后,执行下列操作具有触摸事件的设备,而不捕获点击的正常功能。不幸的是,这似乎是Bootstrap下拉脚本的限制,如果您需要更好的功能,最好使用其他CSS或基于jQuery的下拉菜单中的一种。