我的网站上有一些CSS菜单,可扩展为:hover
(没有js)
这在iDevices上以半破坏的方式起作用,例如,点击将激活:hover
规则并展开菜单,但是随后在其他地方点击不会删除:hover
。同样,如果元素中有一个链接,则:hover
必须点击两次以激活该链接(第一次点击触发:hover
,第二次点击触发链接)。
通过绑定touchstart
事件,我已经能够使事情在iphone上正常运行。
问题在于,有时移动浏览器仍会选择:hover
从css 而非我的touchstart
事件中触发规则!
我知道这是问题所在,因为当我禁用所有 :hover
在css中手动规则时,移动safari效果很好(但是常规浏览器显然不再可用了)。
有没有办法动态地“取消” :hover
当用户使用移动Safari时,某些元素的规则?
在此处查看和比较iOS行为:http : //jsfiddle.net/74s35/3/ 注意:只有某些CSS属性会触发双击行为,例如display:none;。但不是背景:红色;或文字装饰:下划线;