Javascript 当一个div类被多次使用时,jQuery仅用于该类

Javascript 当一个div类被多次使用时,jQuery仅用于该类,javascript,jquery,hoverintent,Javascript,Jquery,Hoverintent,我使用jqueryhoverintent插件在另一个div悬停时淡入一个div。有4个元素共享一个类名,我只想淡入我悬停在上面的元素的子元素,而不是每个共享类的子元素的div。现在的问题是,如果我停留在一次俯冲上,它会在所有4个元素中消失。在我的代码中,我哪里出了一点点错误 以下是html: 这是jQuery $(文档).ready(函数(){ $(“.flated”).hoverIntent({ 结束:法迪文, 超时:300, 出:时尚 }); 函数fadeDivIn(){ var$chi

我使用jqueryhoverintent插件在另一个div悬停时淡入一个div。有4个元素共享一个类名,我只想淡入我悬停在上面的元素的子元素,而不是每个共享类的子元素的div。现在的问题是,如果我停留在一次俯冲上,它会在所有4个元素中消失。在我的代码中,我哪里出了一点点错误

以下是html:


这是jQuery

$(文档).ready(函数(){
$(“.flated”).hoverIntent({
结束:法迪文,
超时:300,
出:时尚
});
函数fadeDivIn(){
var$childs=$('.failed').children();
$($kids,this.fadeIn('slow');
}
函数fadeDivOut(){
var$childs=$('.failed').children();
$($孩子,这个).fadeOut('slow');
}
});

为了防止有人遇到类似问题,我找到了解决方案并将其发布在下面。

更改您的
fadeDivIn
fadeDivOut
功能,如下所示:

function fadeDivIn() {
    var $kids = $(this).children();
    $($kids).fadeIn('slow');
}

function fadeDivOut() {
    var $kids = $(this).children();
    $($kids).fadeOut('slow');
}

在淡入淡出功能中,您需要选择
this
,而不是类的所有元素
laded

$(文档).ready(函数(){
$(.flade”).on('mouseover',function(){
法迪文(本);
});
$(.flade”).on('mouseout',function(){
流行的(这个);
});
功能fadeDivIn(悬停在上方){
var$kids=$(悬停在.children()上方);
$($kids.fadeIn('slow');
}
功能fadeDivOut(悬停在上方){
var$kids=$(悬停在.children()上方);
$($kids.fadeOut('slow');
}
});

刚刚想好了。我在将子项设置为变量的行中添加了一个
this,
,并将其从.fadeIn和.fadeOut行中删除

以下是新的jQuery:

$(文档).ready(函数(){
$(“.flated”).hoverIntent({
结束:法迪文,
超时:300,
出:时尚
});
函数fadeDivIn(){
var$kids=$(这是,'.laded').children();
$($kids.fadeIn('slow');
}
函数fadeDivOut(){
var$kids=$(这是,'.laded').children();
$($kids.fadeOut('slow');
}
});

不幸的是,这不起作用。我以前就这样做过,但它一点作用也没有。我又试了一次,只是想确定一下。感谢您的回答。当您执行
over:fadeDivIn(this)
时,它实际上调用函数并将其返回值存储在名为
over
的属性中,而不是设置回调处理程序。感谢您的回复,但这也不起作用。当页面加载所有的div时,淡入淡出。我直接从这里复制了你的代码,以验证我没有打字错误。这在一定程度上有效。将该元素悬停时,“内”将淡入,然后“外”再“内”。我看到有了这些代码,你就不再使用hoverIntent插件了。我更喜欢使用hoverIntent插件,这样可以最大限度地减少意外触发悬停。