2015-10-01 4 views
0

Я видел несколько вопросов о том, когда выпадающее меню не откроется или не будет закрываться после открытия. Моя проблема заключается в том, что выпадающее меню загружается как открытое, когда страница загружается. Вот рабочая копия кода (http://jsfiddle.net/mariusc23/hts7F/), на который я наткнулся. Я не могу закрыть мои меню по умолчанию. Мой соответствующий код:Bootstrap Dropdown Expanded и не будет закрыт

<html> 
<head> 
<script src="js/jquery.min.js" type="text/javascript"></script> 
<script src="js/bootstrap.min.js" type="text/javascript"></script> 
<script src="includes/dropdownfix.js" type="text/javascript"></script> 
<link href="css/bootstrap.css" rel="stylesheet"> 
</head> 

и

<!-- Collect the nav links, forms, and other content for toggling --> 
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 

    <ul class="nav navbar-nav navbar-right"> 
    <li><a href="index.php">Home</a></li> 
    <li><a href="aboutus.php">About</a></li> 
    <li><a href="contactus.php">Contact</a></li> 
    <?php 
     if($profile_pic){ 
      echo"<img src=\"".$profile_pic."\" />"; 
     } 
    ?> 
    <li class="dropdown"> 
    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><?php echo"$name"; ?> 
     <span class="caret"></span> 
     </a> 
     <ul class="dropdown-menu"> 
     <li><a href="index.php">test</a></li> 

     </ul> 
    </li> 
    </ul> 
</div><!-- /.navbar-collapse --> 

Пожалуйста, помогите! Также я использую bootstrap 3.3.5. Спасибо

EDIT: My bad, heres dropdownfix.js, скопировано из http://jsfiddle.net/mariusc23/hts7F/.

// On dropdown open 
$(document).on('shown.bs.dropdown', function(event) { 
    var dropdown = $(event.target); 

    // Set aria-expanded to true 
    dropdown.find('.dropdown-menu').attr('aria-expanded', true); 

    // Set focus on the first link in the dropdown 
    setTimeout(function() { 
     dropdown.find('.dropdown-menu li:first-child a').focus(); 
    }, 10); 
}); 

// On dropdown close 
$(document).on('hidden.bs.dropdown', function(event) { 
    var dropdown = $(event.target); 

    // Set aria-expanded to false   
    dropdown.find('.dropdown-menu').attr('aria-expanded', false); 

    // Set focus back to dropdown toggle 
    dropdown.find('.dropdown-toggle').focus(); 
}); 
+0

Включите код для dropdownfix.js – topher

+0

Это действительно имеет отношение к PHP? –

+0

@topher, я сделал на редактирование, мой плохой. – Teku1998

ответ

0

Вы пытаетесь получить что-то вроде этого работы ?: JSFiddle

<nav class="navbar navbar-default"> 
<div class="container"> 
    <div class="collapse navbar-collapse" id="colapsableDropdown"> 
     <ul class="nav navbar-nav navbar-right"> 
      <li><a href="index.php">Home</a></li> 
      <li><a href="aboutus.php">About</a></li> 
      <li><a href="contactus.php">Contact</a></li> 

      <li class="dropdown"> 
       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a> 
       <ul class="dropdown-menu"> 
        <li><a href="index.php">test</a></li> 
       </ul> 
      </li> 
     </ul> 
    </div> 
</div> 

Если это все еще не работает, то я рекомендую вам открыть Developer Console (браузер Inspect Element) и проверьте его, потому что у вас могут отсутствовать файлы.

+0

Даже когда я пытаюсь только это, происходит то же самое. Меню по умолчанию расширено и не будет открываться/закрываться при щелчке. Нет ошибок в dev-консоли ... – Teku1998

+0

Это, безусловно, странно, что с файлами ядра для Bootstrap и jquery для них работать и они это делают. Вы проверили удаление любого другого js-файла, лежащего вокруг вашего индекса? – Pixio

+0

У меня есть и еще одна странная вещь: в этом примере кто-то настроил, http://www.bootply.com/b6Rr8K4Gke, такая же ошибка происходит там, где она остается открытой. – Teku1998

Смежные вопросы