显示/隐藏菜单的功能在 iOS 中不起作用

Posted

技术标签:

【中文标题】显示/隐藏菜单的功能在 iOS 中不起作用【英文标题】:Function to show/hide menu not working in iOS 【发布时间】:2018-11-05 12:11:16 【问题描述】:

我创建了一个菜单系统,如果我点击顶层菜单项,它将显示子菜单,然后如果我在页面上的其他任何地方点击它,子菜单将再次消失。这适用于桌面和安卓,但不适用于 ios

$("#menu > li").click(function(e) 
    e.stopPropagation();
);
$("#menu > li > ul").click(function(e) 
    e.stopPropagation();
);
$("body").on("click", function()
    console.log('test');
    $("#menu > li:nth-child(1) > ul").fadeOut("slow");
    $("#menu > li:nth-child(2) > ul").fadeOut("slow");
    $("#menu > li:nth-child(3) > ul").fadeOut("slow");
);

这段代码相当简单。如果他们点击页面上的任意位置(例如<body> 标签),则淡出。并通过停止菜单内的点击事件允许他们在菜单内点击。

我不知道为什么这在 iOS 中不起作用,任何想法或建议将不胜感激。

【问题讨论】:

jQuery click events not working in iOS的可能重复 【参考方案1】:

通过添加“touchstart”解决了问题。

$("#menu > li").on("点击触摸启动", function(e) );

【讨论】:

以上是关于显示/隐藏菜单的功能在 iOS 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

使用 inappbrowser 隐藏和显示方法在 phonegap 应用程序中不起作用

将鼠标悬停在带有显示的下拉菜单上:表格在 IE 中不起作用

UITableViewCell 上的 UILongPressGestureRecognizer 在 iOS 5 和 4.3 中不起作用

使用 Jquery 隐藏 DIV 在 Safari (iOS) 中不起作用

双击 Home 键在 iOS 模拟器中不起作用

jQuery UI 自动完成功能在 iOS 中不起作用