jQuery 在 jQuery 中 :hidden 和 :not(:visible) 的区别

jQuery 在 jQuery 中 :hidden 和 :not(:visible) 的区别

在本文中,我们将介绍 jQuery 中 :hidden 和 :not(:visible) 选择器的区别。

阅读更多:jQuery 教程

:hidden 选择器

:hidden 选择器用于选取所有隐藏的元素。一个元素被视为隐藏的条件是:

  • 它的 style 属性设置为 display:none;
  • 它是一个 input 元素,type 属性设置为 hidden;
  • 它是一个父元素,且所有子元素都隐藏。

例如,下面的代码中的 div 元素就会被 :hidden 选择器选中:

<div style="display:none;">这是一个隐藏的 div 元素。</div>

:not(:visible) 选择器

:not(:visible) 选择器用于选取所有不可见的元素。一个元素被视为不可见的条件是:

  • 它的 style 属性设置为 display:none 或 visibility:hidden;
  • 任何祖先元素的 style 属性设置为 display:none。

下面的代码中的 div 元素就会被 :not(:visible) 选择器选中:

<div style="visibility:hidden;">这是一个不可见的 div 元素。</div>

示例说明

为了更好地理解 :hidden 和 :not(:visible) 选择器的区别,我们来看一个示例。

<html>
<head>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
(document).ready(function(){("#btn1").click(function(){
    var hiddenElements = (":hidden");
    hiddenElements.css("background-color", "yellow");
  });("#btn2").click(function(){
    var invisibleElements = $("div:not(:visible)");
    invisibleElements.css("background-color", "red");
  });
});
</script>
</head>
<body>
<button id="btn1">使用 :hidden 选择器</button>
<button id="btn2">使用 :not(:visible) 选择器</button>
<div style="display:none;">这是一个隐藏的 div 元素。</div>
<div style="visibility:hidden;">这是一个不可见的 div 元素。</div>
</body>
</html>

上面的代码中,当点击 “使用 :hidden 选择器” 按钮时,所有隐藏的元素的背景颜色将会变为黄色。而当点击 “使用 :not(:visible) 选择器” 按钮时,所有不可见的元素的背景颜色将会变为红色。

总结

在 jQuery 中,:hidden 选择器选择所有隐藏的元素,而 :not(:visible) 选择器选择所有不可见的元素。它们的区别在于对于父元素隐藏的情况的处理。使用这些选择器可以方便地对隐藏或不可见的元素进行操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程