我在使用jQuery函数'hasClass'时遇到麻烦。它返回false,而应该返回true。 hasClass函数正在寻找由javascript添加的类。因此,也许hasClass函数无法在经过更改的HTML中找到类?如果是这样,我该如何解决最佳方法?
$(".slides").mouseover(function(){
$(this).stop(true, true).animate({"width": "+=30px", "height": "+=30px", "margin-top": "+=15px"}, 200);
})
$(".slides").mouseout(function(){
alert($(this).hasClass('activeSlide'));
if(!$(this).hasClass('activeSlide')){
$(this).stop(true, true).animate({"width": "-=30px", "height": "-=30px", "margin-top": "-=15px"}, 200);
}
});
$("body").click(function(){
$(".activeSlide").removeClass("activeSlide");
});
$(".slides").click(function(){
$(".activeSlide").removeClass("activeSlide");
$(this).addClass("activeSlide");
alert("Set");
});
最佳答案
由于事件传播,您的身体单击处理程序始终会删除activeSlide类。
尝试event.stopPropagation();
$(".slides").click(function(event){
$(".activeSlide").removeClass("activeSlide");
$(this).addClass("activeSlide");
event.stopPropagation();
alert("Set");
});
要么
$(".slides").click(function(){
$(".activeSlide").removeClass("activeSlide");
$(this).addClass("activeSlide");
alert("Set");
return false;
});
关于javascript - jQuery hasClass检查更改的DOM,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5109368/