Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery对更改的DOM进行类检查_Javascript_Jquery - Fatal编程技术网

Javascript jQuery对更改的DOM进行类检查

Javascript jQuery对更改的DOM进行类检查,javascript,jquery,Javascript,Jquery,我对jQuery函数“hasClass”有问题。它返回false,而它应该返回true。hasClass函数正在查找由javascript添加的类。那么,也许hasClass函数在修改过的HTML中找不到类?如果是这样,我如何才能以最佳方式修复它 $(".slides").mouseover(function(){ $(this).stop(true, true).animate({"width": "+=30px", "height": "+=30px", "margin-top":

我对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类

尝试


由于事件传播,您的主体单击处理程序总是删除activeSlide类

尝试


如果要在同一范围内多次使用同一选择器,那么确实应该将JQ选择器缓存到变量中并使用它<代码>var foo=jQuery(此)var foo=jQuery(此)
$(".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;
});