jQuery 是一个快速、小巧且功能丰富的库,它极大地简化了 JavaScript 编程。通过 jQuery,你可以轻松地操作 DOM、处理事件、执行动画和进行 AJAX 调用。本文将详细介绍一些常用的 jQuery 语法,并通过示例代码帮助你更好地理解和应用这些语法。
目录
在使用 jQuery 之前,首先需要在 HTML 文件中引入 jQuery 库。可以通过 CDN 引入:
- html<!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>jQuery 示例</title>
- <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
- </head>
- <body>
- <!-- 页面内容 -->
- </body>
- </html>
jQuery 提供了强大的选择器功能,可以轻松地选择页面中的元素。
- html<div id="myDiv">Hello, World!</div>
- <p class="myClass">This is a paragraph.</p>
- <a href="https://example.com">Link</a>
-
- <script>
- $(document).ready(function() {
- $("#myDiv").css("color", "red"); // 将 ID 为 myDiv 的元素文本颜色设置为红色
- $(".myClass").css("font-size", "20px"); // 将类为 myClass 的元素字体大小设置为 20px
- $("p").text("This is a new paragraph text."); // 将所有 p 标签的文本内容设置为新的内容
- $("[href]").css("text-decoration", "none"); // 移除所有带有 href 属性的链接的下划线
- $("[href='https://example.com']").css("color", "blue"); // 将 href 为 https://example.com 的链接文本颜色设置为蓝色
- });
- </script>
- html<div id="container">
- <p class="first">First paragraph</p>
- <p class="second">Second paragraph</p>
- <p class="third">Third paragraph</p>
- </div>
-
- <script>
- $(document).ready(function() {
- $("#container p").css("color", "blue"); // 选择 container 下的所有 p 元素
- $("#container > .first").css("font-weight", "bold"); // 选择 container 的直接子元素 .first
- $(".first + .second").css("text-decoration", "underline"); // 选择 .first 的下一个兄弟元素 .second
- $(".first ~ .third").css("background-color", "yellow"); // 选择 .first 的所有后续兄弟元素 .third
- });
- </script>
- html<ul>
- <li>Item 1</li>
- <li>Item 2</li>
- <li>Item 3</li>
- <li style="display: none;">Item 4</li>
- </ul>
-
- <script>
- $(document).ready(function() {
- $("li:first").css("color", "green"); // 选择第一个 li 元素
- $("li:last").css("color", "red"); // 选择最后一个 li 元素
- $("li:even").css("background-color", "lightgray"); // 选择索引为偶数的 li 元素
- $("li:odd").css("background-color", "lightblue"); // 选择索引为奇数的 li 元素
- $("li:visible").css("font-weight", "bold"); // 选择可见的 li 元素
- $("li:hidden").css("border", "1px solid red"); // 选择不可见的 li 元素
- });
- </script>
jQuery 提供了丰富的 DOM 操作方法,可以轻松地修改和操作页面元素。
- <a id="myLink" href="https://example.com">Link</a>
-
- <script>
- $(document).ready(function() {
- var href = $("#myLink").attr("href"); // 获取 href 属性值
- console.log(href); // 输出: https://example.com
-
- $("#myLink").attr("href", "https://newexample.com"); // 设置 href 属性值
- $("#myLink").removeAttr("href"); // 移除 href 属性
- });
- </script>
- html<div id="myDiv">Hello, World!</div>
-
- <script>
- $(document).ready(function() {
- var color = $("#myDiv").css("color"); // 获取 color 属性值
- console.log(color); // 输出: rgb(0, 0, 0)
-
- $("#myDiv").css("color", "red"); // 设置 color 属性值
- $("#myDiv").css({ "font-size": "20px", "background-color": "yellow" }); // 批量设置样式
- });
- </script>
- html<div id="myDiv" class="initial-class">Hello, World!</div>
-
- <script>
- $(document).ready(function() {
- $("#myDiv").addClass("new-class"); // 添加新类
- $("#myDiv").removeClass("initial-class"); // 删除初始类
- $("#myDiv").toggleClass("active"); // 切换 active 类
- });
- </script>
- html<div id="container"></div>
-
- <script>
- $(document).ready(function() {
- var newDiv = $("<div>").text("New Div").addClass("new-div"); // 创建新 div 元素
- $("#container").append(newDiv); // 将新 div 插入到 container 的末尾
- $("#container").prepend("<p>New Paragraph</p>"); // 将新 p 插入到 container 的开头
- $("#container").before("<h1>Title</h1>"); // 在 container 前插入 h1
- $("#container").after("<footer>Footer</footer>"); // 在 container 后插入 footer
- });
- </script>
- html<div id="container">
- <p>Paragraph 1</p>
- <p>Paragraph 2</p>
- </div>
-
- <script>
- $(document).ready(function() {
- $("#container").find("p").first().remove(); // 删除第一个 p 元素
- $("#container").empty(); // 清空 container 的所有内容
- });
- </script>
jQuery 提供了多种事件处理方法,可以轻松地绑定和触发事件。
- html<button id="myButton">Click me</button>
- <div id="result"></div>
- <input type="text" id="myInput">
-
- <script>
- $(document).ready(function() {
- $("#myButton").click(function() {
- $("#result").text("Button clicked!");
- });
-
- $("#myButton").hover(
- function() {
- $(this).css("background-color", "lightblue");
- },
- function() {
- $(this).css("background-color", "");
- }
- );
-
- $("#myInput").keydown(function(event) {
- console.log("Key pressed: " + event.key);
- });
-
- $("#myInput").keyup(function(event) {
- console.log("Key released: " + event.key);
- });
- });
- </script>
- html<ul id="list">
- <li>Item 1</li>
- <li>Item 2</li>
- </ul>
- <button id="addButton">Add Item</button>
-
- <script>
- $(document).ready(function() {
- $("#addButton").click(function() {
- $("#list").append("<li>Item " + ($("#list li").length + 1) + "</li>");
- });
-
- $("#list").on("click", "li", function() {
- $(this).remove();
- });
- });
- </script>
jQuery 提供了多种动画方法,可以轻松地实现元素的动画效果。
- html<div id="myDiv" style="display: none;">Hello, World!</div>
- <button id="toggleButton">Toggle</button>
- <button id="animateButton">Animate</button>
-
- <script>
- $(document).ready(function() {
- $("#toggleButton").click(function() {
- $("#myDiv").slideToggle(500); // 切换显示和隐藏,持续时间为 500 毫秒
- });
-
- $("#animateButton").click(function() {
- $("#myDiv").animate({
- width: "200px",
- height: "100px",
- opacity: 0.5
- }, 1000); // 自定义动画,持续时间为 1000 毫秒
- });
- });
- </script>
jQuery 简化了 AJAX 调用,使得异步数据请求变得更加容易。
- html<button id="ajaxButton">Fetch Data</button>
- <div id="dataResult"></div>
-
- <script>
- $(document).ready(function() {
- $("#ajaxButton").click(function() {
- $.get("https://api.example.com/data", function(data) {
- $("#dataResult").text(JSON.stringify(data));
- }).fail(function() {
- $("#dataResult").text("An error occurred.");
- });
- });
-
- $("#ajaxButton").click(function() {
- $.post("https://api.example.com/submit", { key: "value" }, function(data) {
- $("#dataResult").text(JSON.stringify(data));
- }).fail(function() {
- $("#dataResult").text("An error occurred.");
- });
- });
-
- $("#ajaxButton").click(function() {
- $.ajax({
- url: "https://api.example.com/data",
- method: "GET",
- dataType: "json",
- success: function(data) {
- $("#dataResult").text(JSON.stringify(data));
- },
- error: function() {
- $("#dataResult").text("An error occurred.");
- }
- });
- });
- });
- </script>
通过本文的详细介绍,相信你已经对 jQuery 的常用语法有了更全面的了解。jQuery 的强大之处在于其简洁的语法和丰富的功能,能够大大提升前端开发的效率。希望本文对你有所帮助,祝你在前端开发的道路上越走越远!