У меня есть навигация, которая представляет собой 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
});
Однако на мобильном устройстве или в любом окне просмотра, которое изменяет навигацию на выпадающую навигацию, она не открывается при нажатии на значок переключения.