我有一个下拉菜单,除了触摸设备外,它的工作状态很好。在ipad上,当您触摸其中一个菜单项时,下拉菜单显示为正常,但即使您触摸屏幕上的其他位置,也会保持在此位置。如果您触摸屏幕上的其他位置,我怎样才能使菜单消失?这里的的jsfiddle:下拉菜单在触摸设备上保持打开状态
,这里是我的jQuery:
$(document).ready(function(){
$('ul.nav_menu > li').hover(function() {
$(this).children(".sub_menu")
.stop(true, true)
.animate({
height:"toggle",
opacity:"toggle"
},600, 'easeInOutQuad')
});
});
不确定悬停是否是触摸屏的最佳方法。请尝试专注。因为那种'失焦'功能应该是错误的。你见过jQuery上的悬停功能吗?你有两个参数功能。 'hover(function(){// in hover},function(){// out of hover});'。 那么你可以通过这种方式扭转动画? – sourRaspberri 2013-03-10 16:01:52
“重点”似乎不起作用。对不起,我对JavaScript很新,所以我可能需要一些代码示例来真正掌握你的建议。 – hyphen 2013-03-10 16:07:55
我正在尝试使用modernizr为触摸事件提供一种替代方案,但我不清楚如何将其取消。 – hyphen 2013-03-10 18:05:44