仅当您再次单击菜单按钮时,Slicknav 才会关闭。
所以我做了这段代码,让它在您单击任何地方时关闭
$(document).ready(function() {
//close menu on lost focus
$('.slicknav_menu').focusout(function(event){
$('.menu').slicknav('close');
});
});
当我将窗口缩小以进行测试时,这在桌面上有效,但在手机上,我必须触摸图像才能将其关闭,而不是如果我只是单击任意位置,就像它只在您触摸某个元素时才会注册单击。
我可以使用其他东西来代替 focusout 吗?
最佳答案
我会在主体上使用普通的点击事件,并检查用户点击的内容是否在 slicknav_menu 内。
$('body').click(function(event) {
if(!$(event.target).closest('.slicknav_menu').length) {
$('.menu').slicknav('close');
}
});
关于javascript - Jquery .focusout 不适用于移动设备(slicknav),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29260971/