我有一个带有“主选项卡”的页面,其行为如下; 1. 将鼠标悬停在上面时,我会显示“子标签” 2. 单击任何一个主选项卡,它会转到一个默认的子选项卡页面。
$(".mainlink_href").mouseover(function(){...}
现在这些在桌面浏览器上的行为符合预期。但是在 iPad 上,当用户点击任何主选项卡时,它总是会执行悬停方法,即显示子选项卡并且不会进入子选项卡页面(如在桌面中)
现在我同意,这是按照预期的 iPad 行为,因为没有鼠标光标来跟踪悬停事件,否则...
但有什么方法可以更新代码,使“仅适用于 iPad”在第一次点击时不通过悬停方法,而是执行点击事件并直接将用户带到默认子选项卡页面(即类似于桌面浏览器中上面的第 2 点)
请帮帮我。谢谢。
最佳答案
您可以只分配两个事件处理程序,并让 ontouchstart 处理程序删除 onmouseover 处理程序。
$(".mainlink_href").mouseover(function(){...});
$(".mainlink_href").ontouchstart(function(){this.mouseover=function(){};});
关于javascript - iPad Safari 的悬停事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6410234/