当鼠标悬停在<ul>
标签区域上时,我将<ul>
的不透明度降低,然后为<li>
设置完全不透明度。触摸设备上的悬停事件
这样的例子: Image change opacity on hover without jQuery
现在,问题是在平板电脑和手机,因为在触摸设备上我们没有悬停事件和用户应该点击(触摸)上<li>
因此所有其他<li>
将减少不透明度和用户不能取消选择(取消)<li>
,因此他们应该刷新页面。
我该如何解决这个问题?
当鼠标悬停在<ul>
标签区域上时,我将<ul>
的不透明度降低,然后为<li>
设置完全不透明度。触摸设备上的悬停事件
这样的例子: Image change opacity on hover without jQuery
现在,问题是在平板电脑和手机,因为在触摸设备上我们没有悬停事件和用户应该点击(触摸)上<li>
因此所有其他<li>
将减少不透明度和用户不能取消选择(取消)<li>
,因此他们应该刷新页面。
我该如何解决这个问题?
在触控设备上,不支持hover
。您可以:
在触摸设备的样式表•跳过悬停效果
•使用JavaScript来转盘旋至点击互动
•使用JavaScript来模拟触摸屏设备上悬停互动
上有多个其他职位使讨论这个问题:
How do I simulate a hover with a touch in touch enabled browsers?
how to deal with hover effect on touch devices
Hover for Touch Devices
由于:hover
当然不支持触摸浏览器,所以可以使用touchStart,touchMove和touchEnd事件(通过javascript)。这些在FastClick库中使用得非常好。
还有一些CSS :hover
事件可以通过只触摸浏览器激活,如果你将手指放在屏幕上。
有点晚了......
但你可以使用CSS动画再次隐藏它之前,以示对4-5秒菜单...
并不完美,但你摆脱JS的。 。不是js的是错的,我使用angularJS ..
编辑: - 被要求REF她一个链接http://www.greywyvern.com/?post=337
如果可能的话,请分享示例代码 – Panther
你在这里拍一下?苹果列出了他们的浏览器可以在触摸事件中做不到的事情。看看:https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html – ilarsona