添加CSS类时出现jQuery问题

jQuery issue while adding CSS class

本文关键字:jQuery 问题 CSS 添加      更新时间:2023-09-26

我有5个子链接,有2个状态;hover (CSS className: subLinks) and active (CSS className: subLinksClicked)

我在page ready时调用下面的函数;

$(document).ready(function(){
if (navigator.userAgent.match(/iPad/i) != null)
{
    $("#leftNav  a.subLinks").live("hover",function(){
            $("#leftNav  a.subLinks").removeClass("subLinksClicked");
            $(this).addClass("subLinksClick");
            clickEvent($(this));
    });
}
}

现在iPad出现了一个问题…基本上在点击每一个子链接时都有一个AJAX调用,它会删除所有这些链接,然后作为响应的一部分重写。由于某种原因,在那之后,如果我点击另一个子链接,活动类不会从上一个链接中删除。

我希望发生这种情况,因为我已经使用了jQuery.live()而不仅仅是jQuery.bind()

请帮帮我。谢谢你。

iPad没有悬停事件。

请记住,您正在处理的是触摸屏设备-没有鼠标,因此不支持鼠标移动事件。你可以用谷歌搜索"ipad touch events"。

说,你可以监听一些触摸事件相当于简单的鼠标事件,如mousedown, mousemove和mouseup。看看jQuery Touch Punch插件,它将触摸事件映射到这些基本的鼠标事件。

尝试用touchstart事件附加live函数,如下所示:

$("#leftNav  a.subLinks").live("hover touchstart",function(){ ... ]);