Javascript iPad Safari悬停活动

Javascript iPad Safari悬停活动,javascript,jquery,html,css,ipad,Javascript,Jquery,Html,Css,Ipad,我有一个带有“主选项卡”的页面,其行为如下; 1.悬停在这些选项卡上时,我显示“子选项卡” 2.单击任何主选项卡时,它将转到其中一个默认子选项卡页面 $(".mainlink_href").mouseover(function(){...} 现在,这些行为与桌面浏览器上的预期一样。但在iPad上,当用户单击任何主选项卡时,它总是执行悬停方法,即显示子选项卡,而不进入子选项卡页面(如桌面) 现在我同意,这是按照预期的iPad行为,因为并没有鼠标光标来跟踪悬停事件,否则 但是,我有没有办法更新代码

我有一个带有“主选项卡”的页面,其行为如下; 1.悬停在这些选项卡上时,我显示“子选项卡” 2.单击任何主选项卡时,它将转到其中一个默认子选项卡页面

$(".mainlink_href").mouseover(function(){...}
现在,这些行为与桌面浏览器上的预期一样。但在iPad上,当用户单击任何主选项卡时,它总是执行悬停方法,即显示子选项卡,而不进入子选项卡页面(如桌面)

现在我同意,这是按照预期的iPad行为,因为并没有鼠标光标来跟踪悬停事件,否则

但是,我有没有办法更新代码,使“仅适用于iPad”在第一次单击时不通过悬停方法,而是通过单击事件,直接将用户带到默认的子选项卡页面(即类似于桌面浏览器中的上面第2点)


请帮帮我。谢谢。

您可以分配两个事件处理程序,并让ontouchstart处理程序删除onmouseover处理程序

$(".mainlink_href").mouseover(function(){...});
$(".mainlink_href").ontouchstart(function(){this.mouseover=function(){};});

看看sencha touch:)我推荐它,它会让你大吃一惊,简单的谷歌搜索…我知道sencha touch…但是我不确定是否有必要在这里包括sencha touch…我只需要覆盖iPad上的悬停行为…我的意思是,这不能通过简单的JS更新完成…尝试和$.browser来检测它的iPad(不确定您是否可以,但值得一试)和$.fn.mouseover=function(){…}这样您可以覆盖它…或者您可以查看jquery mobile?或jquery touch:)嗯…我知道如何检测设备(桌面/iPad)…这不是问题..问题是如何覆盖iPad的悬停行为..Thx很多..唯一的问题是鼠标悬停处理程序将被删除…但单击是否会自动执行,即用户是否会被带到href目标,或者用户是否必须第二次单击才能执行单击行为..请检查以了解。但我认为这不应该是个问题。Touchstart在其他任何操作之前被调用,onclick仅在用户从屏幕上释放手指后才被调用。实际上,没有单独的“单击”处理程序…用户通过单击进入下一页..我刚刚尝试了此操作..悬停事件被覆盖…但href没有进入其目标。。