Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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 Mouseenter/mouseleave多个div_Javascript_Jquery_Mouseenter - Fatal编程技术网

Javascript Mouseenter/mouseleave多个div

Javascript Mouseenter/mouseleave多个div,javascript,jquery,mouseenter,Javascript,Jquery,Mouseenter,我有三个div排成一行,每一页都有一个类,例如,class1,class2,class3 当用户鼠标输入我想要显示其他div(divA和divB)的任何一个div时,问题是我可以在函数中有多个div吗 这就是我到目前为止所做的,对于一个工作非常出色的div来说: $(document).ready(function(){ $("body").on("mouseenter", ".class1", function () { $(this).children(".divA").slideDown(

我有三个div排成一行,每一页都有一个类,例如,class1,class2,class3

当用户鼠标输入我想要显示其他div(divA和divB)的任何一个div时,问题是我可以在函数中有多个div吗

这就是我到目前为止所做的,对于一个工作非常出色的div来说:

$(document).ready(function(){
$("body").on("mouseenter", ".class1", function ()
{
$(this).children(".divA").slideDown();
$(this).children(".divB").slideDown();
});

$("body").on("mouseleave", ".class1", function ()
{
$(this).children(".divA").slideUp();
$(this).children(".divB").slideUp();
});
});
但是,如果用户输入.class1、.class2或.class3,我希望效果发生

三次没有类似的功能

我试过了.class1&.class2等,但没有乐趣,也没有.class1 | |.class2等,但也没有乐趣

这可能吗?

你可以简单地做

$(document).ready(function(){
$("body").on("mouseenter", ".class1, .class2, .class3", function ()
{
$(this).children(".divA").slideDown();
$(this).children(".divB").slideDown();
});

$("body").on("mouseleave", ".class1, .class2, .class3", function ()
{
$(this).children(".divA").slideUp();
$(this).children(".divB").slideUp();
});
});

在jQuery中,您可以使用
分隔选择器,因此在您的示例中,类似于
“.class1、.class2”
等等

然后,jQuery将查找与一个或多个选择器匹配的元素

更新:

通过将两个事件绑定到同一个回调,您可以稍微缩短代码,并改用:


我还没有试过,但这在功能上应该与您的代码相当。稍微短一点。

@DarrenSweeney jQuery之美;)@DarrenSweeney看到了我更新的答案,在这里我简化了你的代码。
$(function() {
   $("body").on("mouseenter mouseleave", ".class1, .class2, .class3", function ()
   {
       $(this).children(".divA, .divB").slideToggle();
   });
});