【jQuery】jQuery 简介 ( JavaScript 库简介 | jQuery 核心概念、特点 | jQuery 下载并使用 )

文章目录

  • [一、JavaScript 库简介](#一、JavaScript 库简介)
    • [1、JavaScript 库简介](#1、JavaScript 库简介)
    • [2、常见的 JavaScript 库](#2、常见的 JavaScript 库)
  • [二、jQuery 简介](#二、jQuery 简介)
    • [1、jQuery 核心概念](#1、jQuery 核心概念)
    • [2、jQuery 特点](#2、jQuery 特点)
  • [三、jQuery 使用](#三、jQuery 使用)
    • [1、jQuery 下载地址](#1、jQuery 下载地址)
    • [2、jQuery 下载并使用](#2、jQuery 下载并使用)
    • [3、代码示例 - 默认代码](#3、代码示例 - 默认代码)
    • [4、代码示例 - 隐藏盒子](#4、代码示例 - 隐藏盒子)
    • [5、代码示例 - DOM 加载完毕后隐藏盒子](#5、代码示例 - DOM 加载完毕后隐藏盒子)

一、JavaScript 库简介


1、JavaScript 库简介

JavaScript 库 是 一组预先编写的、可复用的 JavaScript 代码集合 , 其中封装了 开发中的 常用功能 , 如 : DOM 操作、网络请求、数据处理、动画效果 等 ;

原生 JavaScript 就像一堆 零散的工具 ( 锤子、螺丝刀 ) , 而 JS 库是 把 常用工具 打包好的 套装 , 开发者不用 从零编写基础功能 , 只需调用现成的方法 , 大幅提升开发效率 ;

2、常见的 JavaScript 库

常见的 JavaScript 库 :

  • DOM 操作、基础工具库 : 这是 最基础、高频使用的 JS 库 ;
    • jQuery : 是 DOM 操作 的 工具库 , 用于 简化 DOM 操作、统一跨浏览器兼容问题、便捷处理事件 和 AJAX 请求 ;
    • Zepto.js : 轻量版 jQuery ( ~8KB ) , 适配移动端 , 适用于 移动端 H5 页面 ;
    • Cash DOM : 超轻量 ( ~3KB ) , API 兼容 jQuery , 无冗余功能 , 适用于 追求极致体积的轻量页面 ;
  • 数据处理工具库 :
    • Lodash : 高性能 , 封装数组、对象、函数常用操作 ( 去重、深拷贝、防抖节流 ) ;
    • Ramda : 函数式编程工具库 , 纯函数、柯里化 , 适用于 函数式开发风格的项目 ;
  • 网络请求库 :
    • Axios : Promise 化 , 支持浏览器、Node.js , 拦截器、取消请求、错误处理 , 适用于 前后端交互场景 ;
    • SuperAgent : 轻量 , API 简洁 , 支持链式调用的 网络请求库 ;
  • 日期时间处理库 :
    • Day.js : 轻量 ( ~2KB ) , API 兼容 Moment.js , 无依赖 , 国际化 的 日期处理库 ;
  • 可视化库 :
    • ECharts : 百度开源 , 开箱即用 , 图表类型丰富 ( 柱状图、折线图、地图、数据大屏 ) , 适用于 后台管理系统、数据可视化大屏 场景 ;
  • 表单处理、验证库 :
    • VeeValidate : 适配 Vue , 轻量级 , 验证规则灵活 的 表单验证库 , 适用于 Vue 项目的表单验证 ;
    • Formik : 适配 React , 简化表单状态管理、验证、提交 , 适用于 React 项目的表单处理 ;
  • 动画、交互库 :
    • GSAP : 高性能动画库 , 支持 DOM/SVG/Canvas 动画 , 移动端流畅 , 适用于 复杂动画需求 , 如 H5 活动、交互动效 ;

二、jQuery 简介


1、jQuery 核心概念

jQuery 是 2006 年发布的 一款轻量级、开源的 JavaScript 库 , 核心定位是 简化 前端开发中的 DOM 操作、事件处理、AJAX 请求 , 其 核心理念 是 " Write Less, Do More " , 使用更少的代码完成更多的功能 ;

jQuery 中的 j 表示 JavaScript , Query 表示 查询 , 其含义是 查询 JavaScript 脚本 , 将 js 中的 DOM 操作 封装在了 jQuery 中 , 可以快速 查询 和 使用 DOM 功能 ;

2、jQuery 特点

jQuery 特点 :

  • 轻量开源免费 : jQuery 是 轻量级的 JS 库 , 核心文件只有 几十 kb , 该库开源 , 且免费 ;
  • 操作简介 : 实现了 极致简洁 的 DOM 操作 , 原生 JavaScript 操作 DOM 代码繁琐 , 而 jQuery 基于 CSS 选择器语法 , 能快速定位和操作元素 ; 如 : $('#box') 可获取 id 为 box 的元素 , JS 原生 document.getElementById('box') ;
  • 浏览器兼容 : jQuery 内部 封装了 不同浏览器 的 兼容逻辑 , 兼容 早期浏览器 ;
  • 链式调用 : 链式调用 允许连续调用多个方法 , 如 : $('#box').css('color','red').text('Hello') ;
  • 隐式迭代 : 隐式迭代 能 自动遍历多个元素 , 如 : $('li').css('color','blue') 无需写循环 , 大幅减少代码量 ;
  • 功能封装 : 除了 DOM 操作 , 还封装了 事件处理 click()/on()、AJAX 请求 $.get()/$.ajax() 、动画效果 show()/animate() 等常用功能 ;
  • 插件生态 : 支持插件扩展 , 基于 jQuery 开发了 大量插件 , 无需从零开发复杂功能 , 直接复用 , 如 : 轮播图、表单验证、日历组件 ;

三、jQuery 使用


1、jQuery 下载地址

jQuery 官网 : https://jquery.com/

jQuery 下载地址 : https://jquery.com/download/ , 可下载 压缩版 和 开发版 ;

jQuery 压缩版本 : https://code.jquery.com/jquery-3.7.1.min.js , 压缩版本经过压缩优化 , 体积较小 , 但是可读性很差 ;

jQuery 开发者版本 : https://code.jquery.com/jquery-3.7.1.js , 开发者版本 可读性好 , 带注释 ;

2、jQuery 下载并使用

下载 jQuery :https://code.jquery.com/jquery-3.7.1.min.js 页面的 jQuery 脚本 全部选中 , 然后拷贝到 本地工程目录下的 js/jquery.min.js 脚本中 ;

jQuery 拷贝后 , 发现代码只有 1 行 , 拷贝后的 文件大小 86 kB ;

3、代码示例 - 默认代码

代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="js/jquery.min.js"></script>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
        }
    </style>
</head>

<body>
    <div></div>
</body>

</html>

展示结果 :

4、代码示例 - 隐藏盒子

下面的代码中 , 调用 $('div').hide(); jQuery 代码 隐藏 div 盒子 , 但是 js 代码必须写在 div 后面 , 否则隐藏盒子效果无效 ;

代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="js/jquery.min.js"></script>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
        }
    </style>
</head>

<body>
    <div></div>

    <script>
        // 隐藏 div 盒子
        $('div').hide();
    </script>
</body>

</html>

展示结果 :

5、代码示例 - DOM 加载完毕后隐藏盒子

下面的代码中 , 调用 jQuery 代码 隐藏 div 盒子 , 将 函数 代码写在 $(document).ready() 中 , 就是在 Document 加载完成后执行的内容 ;

核心代码 :

javascript 复制代码
        // DOM 加载完毕后执行如下 js 代码
        $(document).ready(function() {
            $('div').hide();
        })

上述形式有简易写法 :

javascript 复制代码
		// DOM 加载完毕后执行如下 js 代码
        $(function() {
            $('div').hide();
        })

代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="js/jquery.min.js"></script>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: pink;
        }
    </style>
    <script>
        // DOM 加载完毕后执行如下 js 代码
        // $(document).ready(function() {
        //     $('div').hide();
        // })
        
        // DOM 加载完毕后执行如下 js 代码 - 简易写法
        $(function() {
            $('div').hide();
        })
    </script>
</head>

<body>
    <div></div>
</body>

</html>

展示结果 :

相关推荐
掘金安东尼5 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼5 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea7 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo8 小时前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队8 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
cipher9 小时前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
UrbanJazzerati9 小时前
非常友好的Vue 3 生命周期详解
前端·面试
AAA阿giao9 小时前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
亦妤9 小时前
JS执行机制、作用域及作用域链
javascript
兆子龙10 小时前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构