javascript - 将鼠标悬停在同一类 div 集中的单个 div 上时显示叠加层

标签 javascript jquery html css

假设我有 4 个动态生成的 div,每个都具有相同的类和唯一的编号 ID,就像这样。每个都包含一个具有 100% 宽度和高度的绝对定位的 div,因此在显示时,它会填充整个 div。

<div class="my_class" id="1">
    <div class="overlay"></div>
</div>

<div class="my_class" id="2">
    <div class="overlay"></div>
</div>

<div class="my_class" id="3">
    <div class="overlay"></div>
</div>

<div class="my_class" id="4">
    <div class="overlay"></div>
</div>



<style>
    .overlay {
        display:none;
    }
</style>

当我将鼠标悬停在其中一个 div 上时,我希望该 div 而不是其他任何 div 显示叠加层,然后当我停止悬停时,叠加层 div 应该消失。关于如何使用 jquery 执行此操作的任何想法?这是我试过的。

$('document').ready(function(){
  $('.my_class').mouseenter(function(){
    var id = $(this).attr("id");
    $("#"+ id +" div").fadeTo("fast", 1);
    $("#"+ id +" div").mouseleave(function(){
      $("#"+ id +" div").fadeTo("fast", 0);          
    });
  });
});

最佳答案

我将其重写为:

$('document').ready(function(){
 $('.my_class').mouseenter(function(){$(this).fadeTo("fast", 1);});
 $('.my_class').mouseleave(function(){$(this).fadeTo("fast", 0);});
});

您将 mouseleave 附加到 mouseenter 中,我猜您不会那样做。

关于javascript - 将鼠标悬停在同一类 div 集中的单个 div 上时显示叠加层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23945947/

相关文章:

javascript - 使用 javascript 搜索 gridview

javascript - jQuery - 设置 var - 多个 Ul - 为每个 ul 定位相同的 li child

javascript - 在 JavaScript 中动态更新嵌套对象

javascript - 如果在更新下拉菜单时网络服务不可用怎么办?

javascript - 循环多个TD,抓取多个值,填充数组

javascript - 如何通过带有文本换行的多个文本字段在 Canvas 上显示用户输入

javascript - 简单的表单验证不起作用

javascript - 在 Canvas 上绘制时的偏移

javascript - 克隆音频源而无需再次下载

html - 左对齐,并在容器内居中放置内联图像