我正在使用 Slicknav 移动菜单脚本:http://slicknav.com/
它工作得很好,除了我不知道如何在 ios 设备上单击菜单外部时关闭它。当我在桌面和 Android 上测试它时,单击外部时它可以正常关闭,但在我的 iPad 上它不起作用。这是当前的代码。有什么见解吗?谢谢!
<script src="slicknav.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('.menu').slicknav({
label:'',
closeOnClick:true
});
$('.slicknav_menu').focusout(function(event){
$('.menu').slicknav('close');
});
});
</script>
<nav>
<ul class="menu">
<li><a href="">Home</a></li>
<li><a href="">Link1</a></li>
<li><a href="">Link2</a></li>
</ul>
</nav>
最佳答案
在我的网站上,右侧菜单使用 slicknav。由于这段代码,当我在 iOS 上单击外部时,它可以正常关闭。演示:http://www.crealisationweb.fr
替换这个:
$('.slicknav_menu').focusout(function(event){
$('.menu').slicknav('close');
});
有了这个:
$("div, html").on("click", function (event) {
if(!$(event.target).hasClass(".menu a") &&
!$(event.target).hasClass("ul.slicknav_nav li a") &&
!$(event.target).hasClass("slicknav_menutxt") &&
!$(event.target).hasClass("slicknav_icon") &&
!$(event.target).hasClass("slicknav_icon-bar") &&
!$(event.target).hasClass("slicknav_btn")) {
$(".menu").slicknav('close');
}
});
关于javascript - 当外部点击 IOS 设备时,使 Slicknav 菜单关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29658550/