Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery.focusout在移动设备上不工作(slicknav)_Javascript_Android_Jquery_Ios_Mobile - Fatal编程技术网

Javascript Jquery.focusout在移动设备上不工作(slicknav)

Javascript Jquery.focusout在移动设备上不工作(slicknav),javascript,android,jquery,ios,mobile,Javascript,Android,Jquery,Ios,Mobile,仅当再次单击菜单按钮时,Slicknav才会关闭 所以我做了一些代码,当你点击任何地方的时候,它就会关闭 $(document).ready(function() { //close menu on lost focus $('.slicknav_menu').focusout(function(event){ $('.menu').slicknav('close'); }); }); 在桌面上,当我把我的窗口缩小到可以测试的程度时,这个功能就起作用了,但在手

仅当再次单击菜单按钮时,Slicknav才会关闭

所以我做了一些代码,当你点击任何地方的时候,它就会关闭

$(document).ready(function() {
   //close menu on lost focus
   $('.slicknav_menu').focusout(function(event){
      $('.menu').slicknav('close');
   });  
});
在桌面上,当我把我的窗口缩小到可以测试的程度时,这个功能就起作用了,但在手机上,我必须触摸一个图像才能关闭它,而不是我只是在任何地方点击,它就像只在你触摸一个元素时才会显示点击


我可以使用其他东西而不是focusout吗?

我会在主体上使用正常的单击事件,并检查用户单击的内容是否在slicknav_菜单中

$('body').click(function(event) { 
    if(!$(event.target).closest('.slicknav_menu').length) {
       $('.menu').slicknav('close');
    }        
});
固定使用

$(document).ready(function() {

   $('#whole-page').click(function(event) { 
      $('.menu').slicknav('close');
   });

});

我无法使用body,因为菜单位于body中,打开后菜单会直接关闭。

甚至不会在桌面上关闭,所以当您单击外部时,它会传递'if'子句的逻辑?我们需要更多地查看生成的html结构,以找出原因。我的代码在桌面上工作,我需要能够识别触摸的东西,即单击