2016-06-07 3 views
0

Это мой второй раз, когда у меня есть эта очень неприятная проблема с мобильным переключателем bootstrap. Я не знаю, в чем проблема, но через некоторое время кнопка переключения меню просто перестает работать. Я много раз искал в Интернете и нашел эту проблему, и я думал, что это мой, идентификатор данных. Но я пробовал это так же, как и многие другие методы.Мобильное меню Bootstrap перестает работать?

В настоящее время я работаю над внедрением Bootstrap в Wordpress и создаю собственную тему. Мне очень нравится Bootstrap, но теперь я начинаю ненавидеть его со всеми классами ошибок och. Или другая идея в том, что я действительно сосать при начальной загрузке! ПОМОГИТЕ!! Вот мой код ...: P

------ index.php -------

<nav class="navbar navbar-inverse navbar-fixed-top"> 
     <div class="container"> 
     <div class="navbar-header"> 
      <button type="button" class="navbar-toggle collapsed" id="" data-toggle="collapse" data-target="#navigationbar" aria-expanded="false" aria-controls="navbar"> 
      <span class="sr-only">Toggle navigation</span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      <span class="icon-bar"></span> 
      </button> 
      <a class="navbar-brand" href="#">Project name</a> 
     </div> 
     <div id="navigationbar" class="navbar-collapse collapse"> 
      <ul class="nav navbar-nav"> 
      <li class="active"><a href="#">Home</a></li> 
      <li><a href="#about">About</a></li> 
      <li><a href="#contact">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="#">Action</a></li> 
       <li><a href="#">Another action</a></li> 
       <li><a href="#">Something else here</a></li> 
       <li role="separator" class="divider"></li> 
       <li class="dropdown-header">Nav header</li> 
       <li><a href="#">Separated link</a></li> 
       <li><a href="#">One more separated link</a></li> 
       </ul> 
      </li> 
      </ul> 
     </div> 
     </div> 
    </nav> 

И мой PHP код:

function theme_styles() { 
    wp_enqueue_style('bootstrap_css', 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css'); 
    wp_enqueue_style('viewportfix_css', get_template_directory_uri() . '/css/ie10-viewport-bug-workaround.css'); 
    wp_enqueue_style('main_css', get_template_directory_uri() . '/css/main.css'); 
} 

add_action('wp_enqueue_scripts', 'theme_styles'); 



function theme_js() { 
    global $wp_scripts; 
    wp_register_script('html5_shiv', '//oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js', '', '', false); 
    wp_register_script('respond_js', '//oss.maxcdn.com/respond/1.4.2/respond.min.js', '', '', false); 

    $wp_scripts->add_data('html5_shiv', 'conditional', 'lt IE 9'); 
    $wp_scripts->add_data('respond_js', 'conditional', 'lt IE 9'); 

    wp_enqueue_script('bootstrap_js', '//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js'); 
    wp_enqueue_script('bootstrap_js', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js'); 
    wp_enqueue_script('viewportfix_js', get_template_directory_uri() . '/js/ie10-viewport-bug-workaround.js', array('jquery'), '', true); 
    wp_enqueue_script('main_js', get_template_directory_uri() . '/js/main.min.js', array('jquery'), '', true); 
} 

add_action('wp_enqueue_scripts', 'theme_js'); 

ответ

0

Ваш самозагрузки .js-файл не имеет JQuery в качестве зависимости. Вам не нужно ставить в очередь JQuery с тех пор, как он уже находится в WordPress. Просто добавьте его как зависимость, когда вы вставляете свой файл bootstrap js, как вы делали с вашим файлом main.js.

+0

Я уже пытался это сделать, и когда я это сделаю, я получаю это «bootstrap.min.js? Ver = 4.5.2: 6 Неиспользуемая ошибка: JavaScript для Bootstrap требует jQuery» – user3289402

+0

О, я нашел решение. Когда я удалил enqueue, как вы сказали, мне нужно было поставить строку «wp_enqueue_script (« bootstrap_js »,« //maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js »); под двумя другими wp_enqueue_script и мой мобильный переключатель снова и снова запускается! спасибо :) – user3289402

+0

Добро пожаловать. Не стесняйтесь выбирать мой ответ –

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