返回

学习 jQuery 选择器:选择和操作 DOM 元素的基石

前端

jQuery 是一个功能无比,并且用处极广的 JavaScript 库,它极大地方便了我们与 DOM(document object model,或者译作“D ocument O bject M odel,文本文档对象模型 ”)的交互。其中,选择器无疑是 jQuery 的基石,它允许我们根据各种标准精准定位 DOM 元素。本篇教程将带你踏上探索 jQuery 选择器奇妙旅程的第一步,助你掌握选择和操作 DOM 元素的基础。

选择器语法

jQuery 选择器语法遵循 CSS 选择器语法,由一个或多个选择器组合而成,每个选择器代表一个特定的 DOM 元素或元素组。最基本的语法如下:

$(选择器)

其中,“$” 符号代表 jQuery 函数,而**“选择器”** 可以是:

  • 元素名称 (例如,$("div"))
  • 类名 (例如,$(".my-class"))
  • ID (例如,$("#my-id"))
  • 标签名称 (例如,$("input[type=checkbox]"))

多个选择器可以组合使用,用逗号分隔。例如,以下选择器将选择所有具有 "my-class" 类和 "special" ID 的 div 元素:

$("div.my-class#special")

常用选择器

以下是一些最常用的 jQuery 选择器:

  • $("*"): 选择所有元素**
  • **(element)** :选择具有指定元素名称的元素(例如,("div"))
  • **(".class"):** 选择具有指定类名的元素(例如,(".my-class"))
  • **("#id"):** 选择具有指定 ID 的元素(例如,("#my-id"))
  • **("tag[attribute]):** 选择具有指定属性的元素(例如,("input[type=checkbox]"))
  • **(":first"):** 选择第一个元素(例如,("li:first"))
  • **(":last"):** 选择最后一个元素(例如,("li:last"))
  • **(":even"):** 选择偶数个元素(例如,("li:even"))
  • **(":odd"):** 选择奇数个元素(例如,("li:odd"))

选择器进阶

除了基本选择器外,jQuery 还提供了许多更复杂的表达式,允许我们对选择更加精细的控制。例如:

  • 子代选择器: 用于选择父元素内的子元素(例如,$("div p"))
  • 后代选择器: 用于选择所有后代元素(例如,$("div *"))
  • 属性选择器: 用于根据属性值选择元素(例如,$("input[type=text]"))
  • 伪类选择器: 用于根据元素的状态或行为选择元素(例如,$(":hover"))

选择器操作

一旦我们使用选择器定位了 DOM 元素,我们就可以使用 jQuery 方法对其进行各种操作。以下是一些最常用的操作:

  • $.hide(): 隐藏元素
  • $.show(): 显示元素
  • $.toggle(): 在隐藏和显示之间切换元素
  • $.addClass(): 添加一个或多个类到元素
  • $.removeClass(): 从元素中删除一个或多个类
  • $.toggleClass(): 添加或删除一个类,具体取决于元素的当前状态
  • $.text(): 获取或设置元素的文本内容
  • $.val(): 获取或设置表单输入元素的值

举例说明

为了演示 jQuery 选择器和操作的实际应用,我们来看一个示例:

<!DOCTYPE html>
<html>
<head>
  
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
  <style>
    .highlight {
      background-color: yellow;
    }
  </style>
</head>
<body>
  <h1>jQuery 选择器示例</h1>
  <ul>
    <li id="item1">项目 1</li>
    <li class="item2">项目 2</li>
    <li class="item3">项目 3</li>
    <li class="item4">项目 4</li>
    <li class="item5">项目 5</li>
  </ul>

  <button id="highlight-btn">高亮偶数项</button>

  <script>
    $(document).ready(function() {
      $("#highlight-btn").click(function() {
        $("li:even").addClass("highlight");
      });
    });
  </script>
</body>
</html>

在本例中,我们使用 jQuery 选择器 ("li:even") 来选择所有偶数个 li 元素。然后,我们使用 .addClass() 方法在这些元素上添加 "highlight" 类,使其背景变为黄色。

结论

jQuery 选择器为我们提供了在 DOM 中精确定位和操作元素的强力工具。通过理解其基础语法和进阶用法,我们可以有效地在交互式 Web 开发中管理和操作 HTML 文档。继续探索 jQuery 选择器,它将极大地方便您创建更出色、更响应式的 Web 应用程序。

SEO 相关内容: