JS-32-jQuery01-jQuery的引入

一、初识jQuery

jQuery是JavaScript世界中使用最广泛的一个库。鉴于它如此流行,又如此好用,所以每一个入门JavaScript的前端工程师都应该了解和学习它。

jQuery是一个优秀的JS函数库。

(对BOM和DOM的封装)

jQuery这么流行,肯定是因为它解决了一些很重要的问题。实际上,jQuery能帮我们干这些事情:

  • 消除浏览器差异:你不需要自己写冗长的代码来针对不同的浏览器来绑定事件,编写AJAX等代码;

  • 简洁的操作DOM的方法:写$('#test')肯定比document.getElementById('test')来得简洁;

  • 轻松实现动画、修改CSS等各种操作。

jQuery的理念"Write Less, Do More",让你写更少的代码,完成更多的工作!

JS原生,对BOM和DOM的操作比较繁琐,JS中对标签的操作基本上为:增删改查,其中查询最为核心。jQuery则是对JS中标签的查询比较方便。所以,选择器是jQuery的核心!!!

1-1、jQuery的功能

  • HTML元素选取(选择器)
  • HTML元素操作
  • CSS操作
  • HTML事件处理
  • JS动画效果
  • 链式效果
  • 读写合一
  • 浏览器兼容
  • 易扩展插件
  • ajax分装
  • ......

1-2、jQuery的版本

二、jQuery的使用

2-1、方法一:下载 jQuery

1、从jQuery官网可以下载对应版本到本地。

https://jquery.com/download/

jQuery只是一个jquery-xxx.js文件,但你会看到有compressed(已压缩)和uncompressed(未压缩)两种版本,使用时完全一样,但如果你想深入研究jQuery源码,那就用uncompressed版本。

2、将下载的jquery-xxx.js文件保存到项目对应的文件夹中;

3、使用jQuery只需要在页面的<head>引入jQuery文件即可;

2-2、方法二:CDN

如果您不希望下载并存放 jQuery,那么也可以通过 CDN(内容分发网络) 引用它。

它是由一组分布在不同地理位置的服务器组成的网络,这些服务器被放置在全球范围内的数据中心之间,以提供高速、高可用性的内容分发服务。

CDN的核心功能主要包括缓存和回源。

它将源站的资源缓存到分布在全国各地的CDN节点,用户请求数据时,先访问距离用户最近的CDN节点上缓存的资源,如果没有取到缓存,才会去访问源站。

这种机制避免了高峰期网络拥塞,为源站分担了压力,同时也缩短了用户等待时长。

CDN在前端开发中的主要作用包括:

  1. 加速网页加载:CDN可以将静态资源如图片、样式表、脚本文件等缓存到离用户更近的位置,大大减少了用户请求的响应时间,提升了网页的加载速度。
  2. 节省带宽消耗:通过在CDN节点服务器上缓存资源,可以减少用户请求对原始服务器的负载,从而节约带宽消耗。
  3. 提高网站可用性:CDN的分布式架构能够提高网站的可靠性和可用性,即使部分节点服务器出现故障,其他节点服务器也可以继续提供内容分发服务。

CDN是一种用存储空间换取时间的技术。

谷歌和微软的服务器都存有 jQuery 。

提示:使用谷歌或微软的 jQuery,有一个很大的优势:

许多用户在访问其他站点时,已经从谷歌或微软加载过 jQuery。所有结果是,当他们访问您的站点时,会从缓存中加载 jQuery,这样可以减少加载时间。

同时,大多数 CDN 都可以确保当用户向其请求文件时,会从离用户最近的服务器上返回响应,这样也可以提高加载速度。

三、$符号

$是著名的jQuery符号。

实际上,jQuery把所有功能全部封装在一个全局变量jQuery中,而$也是一个合法的变量名,它是变量jQuery的别名:

javascript 复制代码
window.jQuery; // jQuery(selector, context)
window.$; // jQuery(selector, context)
$ === jQuery; // true
typeof($); // 'function'

$本质上就是一个函数,但是函数也是对象,于是$除了可以直接调用外,也可以有很多其他属性。

注意 ,你看到的$函数名可能不是jQuery(selector, context),因为很多JavaScript压缩工具可以对函数名和参数改名,所以压缩过的jQuery源码$函数可能变成a(b, c)

绝大多数时候,我们都直接用$(因为写起来更简单嘛)。

但是,如果$这个变量不幸地被占用了,而且还不能改,那我们就只能让jQuery$变量交出来,然后就只能使用jQuery这个变量:

javascript 复制代码
$; // jQuery(selector, context)
jQuery.noConflict();
$; // undefined
jQuery; // jQuery(selector, context)

这种黑魔法的原理是jQuery在占用$之前,先在内部保存了原来的$,调用jQuery.noConflict()时会把原来保存的变量还原。

相关推荐
拥抱AGI3 分钟前
我说大模型微调没啥技术含量,谁赞成谁反对?
人工智能·学习·语言模型·大模型学习·大模型入门·大模型教程
+码农快讯+5 分钟前
Git入门学习(1)
git·学习·elasticsearch
小米里的大麦15 分钟前
【C++】深入理解引用:从基础到进阶详解
c++·经验分享·笔记·引用·引用和指针
MowenPan199525 分钟前
高等数学 3.5 函数的极值与最大值最小值
笔记·学习·高等数学
晚睡早起₍˄·͈༝·͈˄*₎◞ ̑̑25 分钟前
苍穹外卖学习笔记(七)
java·windows·笔记·学习·mybatis
百里与司空40 分钟前
学习CubeIDE——定时器开发
stm32·单片机·嵌入式硬件·学习
天下无贼!42 分钟前
2024年最新版Vue3学习笔记
前端·vue.js·笔记·学习·vue
yunhuibin1 小时前
ffmpeg面向对象——参数配置秘密探索及其设计模式
学习·设计模式·ffmpeg
玄客)2 小时前
MACCMS 远程命令执行漏洞复现(CVE-2017-17733)
学习·安全
HinsCoder2 小时前
【渗透测试】——Upload靶场实战(1-5关)
笔记·学习·安全·web安全·渗透测试·测试·upload靶场