Внешне загруженная навигация не работает на мобильном телефоне - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть навигация, которая представляет собой UL, который находится во внешнем html-файле и вызывается на страницу с помощью jQuery.Тем не менее, навигация не будет работать на мобильном телефоне, то есть меню не открывается при нажатии на тумблер (значок гамбургера).Навигация нормально загружается на рабочем столе.

Я знаю, что это логическая проблема, но я не могу понять это.Я подозреваю, что значок переключения обрабатывается с помощью некоторого JS, но, поскольку он не загружается в документ до тех пор, пока jquery не извлечет его из внешнего файла, он не будет активирован, поскольку он еще не существует.

Я не думаю, что jquery - это рассматриваемый код, так же как то, как я его загружаю или чего мне не хватает в логике, чтобы код заставлял значок переключателя отображать и скрывать навигацию.

Тем не менее, вот код, который загружается асинхронно, и jQuery объявляется до его загрузки.

У меня есть пустой div, где меню / навигация должна идти как

<div id="navi"></div>

, а затем

<script type="text/javascript">
$(document).ready(function(){        
  $('#navi').load('main-nav.html'); 
});
</script>

The code that handles the click on the toggle icon:

$('.trigger').on('tap', function(e){
    e.stopPropagation();
    $('#navigation').toggleClass('active'); // Toggle responsive menu
});

Однако на мобильном устройстве или в любом окне просмотра, которое изменяет навигацию на выпадающую навигацию, она не открывается при нажатии на значок переключения.

...