我的Wordpress website正在使用Superfish 1.5.4来呈现菜单项。
我的菜单包含许多父菜单项,也是可点击的页面,在将鼠标悬停在这些父项上时,子菜单项应该出现
将鼠标悬停在PC浏览器中的父菜单项上时,会出现子菜单项,这是预期的行为。
在iPhone浏览器中,当触摸父菜单项时,会出现子菜单项,这也是首选行为。 (因此这有效地触发了悬停行为)
问题是在Android设备上,触摸父菜单项会导致点击事件,而不是我们在iPhone上看到的悬停行为。
我查看了Superfish JavaScript,但我没有看到任何iPhone特定的逻辑。
因此,我想知道为什么iPhone中的触摸会导致悬停行为,但不会出现在Android设备中。
我在这里缺少什么?
答案 0 :(得分:3)
问题本质上是:hover
功能在触摸设备上确实不存在(假设没有物理方法可以像鼠标一样悬停)。您在iPhone上获得预期效果的唯一原因是使用iOS的设备会在点击事件之前触发:hover
事件,因此您可以在页面更改之前的短暂时间内看到预期的样式。对此没有任何好的解决方案,特别是对于像您这样的子菜单的菜单,但我要查看一些资源,例如 this 以获得更好的解决方案这个问题的概念以及它可以解决的问题"。