【发布时间】:2014-11-12 09:03:43
【问题描述】:
虽然之前有人问过这个问题,但我还没有在任何地方找到可行的解决方案,所以这里......
我在响应式网站上有一个普通的纯 CSS 导航菜单和子菜单(使用 :hover)。一切正常,除了在触摸设备上,如果您打开子菜单并决定不点击链接,即使您触摸页面上的其他地方,它也不会关闭。
有没有办法让子菜单在点击其他地方时关闭触摸设备,但保留桌面用户的 :hover 功能?
谢谢!
PS。我对 JS 和 jQuery 非常陌生,因此非常感谢您提供示例答案!
【问题讨论】:
-
为什么不使用onclick方法?
-
我将如何为仅触摸设备执行此操作,同时将悬停留在桌面?
-
您可以通过使用 JQuery 指定屏幕大小来做到这一点。例如,如果你只想要平板电脑,你可以这样做
if ( $(window).width() < 739) { //Add your javascript for large screens here } -
触控设备没有“:hover”模式。因此,您使用其他东西来“激活”您的“CSS 下拉菜单”。是吗?
-
@Yevgeniy Afanasyev - 感谢您的回答和评论,但是由于模拟悬停的触摸事件,即使在触摸设备上它也会(技术上)激活“悬停”。所以打开下拉菜单不是问题,但关闭触摸是。希望这是有道理的......
标签: javascript jquery css drop-down-menu touch