目录

一、jQuery简介

二、引入jQuery

三、jQuery核心函数

四、jQuery对象

五、jQuery对象操作class

六、addClass补充

七、jQuery对象复制

一、jQuery简介

jQuery是一个快速的、小型的、具有丰富功能的JavaScript库。它的出现使得网页中的DOM、事件、动画、Ajax等操作变得更加简单,“写更少的代码,做更多的事儿”是jQuery一直坚信的开发理念。

就是一组编写好的代码。这组代码中包含了一些已经定义好的对象和函数。只需要将库引入到页面中,即可直接使用这些对象和函数。

jQuery—— 一个过时的库

所有的库都是为了解决开发时的痛点而存在的。jQuery解决的问题主要有两个:简化DOM操作、解决浏览器的兼容问题。然而随着前端的发展、DOM标准的更新、IE的消亡,这两个问题已经不是什么大问题了,以及React、Vue、Angular大型框架的出现,使用jQuery的机会越来越少,所以没有学习jQuery的必要了。如果比较赶时间,可以跳过jQuery的学习。

二、引入jQuery

使用库就需要先把这组代码引入到页面中,也就是引入库。实际的操作就是通过script标签引入一个外部的js 文件,这一点所有的库都是一样的。

引入jQuery:

1.可以直接下载jQuery脚本文件,然后放入本地服务器,并在网页中通过script 标签进行引入

2.也可以通过公共的cdn引入,使用公共cdn比较简单,以字节跳动静态资源为例,要引入3.x版本的jQuery,只需要将如下代码粘贴到网页中即可:

 <script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><script>console.log($);//判断是否成功引入jQuery</script>

或者这个:

 <script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.min.js"></script><script>console.log($);//判断是否成功引入jQuery</script>

如何自己下载获取jQuery文件?
        去jQuery官网(jQuery) ,点击下载,然后选择要下载的版本

三、jQuery核心函数

引入jQuery库,其实就是向网页中添加了一个新的函数$(jQuery)

- $ 是jQuery中的核心函数,jQuery的所有功能都是通过该函数来进行的

- 核心函数的功能(两种作用)

1. 将它作为对象使用,此时是一个工具类

- 在核心函数中jQuery为我们提供了多个工具方法

  jQuery.isArray( )  检查是不是数组

jQuery.isFunction( )  检查是不是函数

jQuery.isNumeric( )  检查是不是数值

2. 将它作为函数调用,根据不同参数的不同可以发挥不同的作用

jQuery( 函数 ) 将一个函数作为$的参数

- 这个函数会在文档加载完毕之后执行

- 相当于document.addEventListener("DOMContentLoaded",function(){ })

  jQuery( 选择器 )  将选择器字符串作为参数

- jQuery 自动去网页中查找元素

- 作用类似于 document.querySelectorAll( "...")

- 注意:通过jQuery核心函数查询的结果并不是原生的DOM对象,

而是一个经过jQuery包装过的新的对象,这个对象我们称其为jQUery对象                               jQuery对象不能直接调用原生DOM对象的方法,

通常我们为jQuery对象命名时,会使用$开头(为了区分 $对象和DOM原生对象)

             jQuery( DOM对象)  将DOM对象作为参数

- 可以将DOM对象转换为jQuery对象,从而使用jQuery对象的方法

             jQuery( HTML代码 )  将HTML代码作为参数

- 会根据html 代码来创建元素

注意:上述编写代码时,可以使用$ 代替jQuery

注意:在jQuery中我们设置变量时,使用var ,因为一般使用jQuery说明比较旧的项目,考虑兼容性,同时也尽量避免使用箭头函数

1. 将jQuey作为对象(工具类)调用的例子

 <script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><script>console.log(jQuery === $);//truefunction fn(){}var num = 10// jQuery.isFunction( )  检查是不是函数console.log($.isFunction(num));//falseconsole.log($.isFunction(fn));//true// 可以使用typeof检查类型console.log(typeof fn === "function");//true</script>

2. 将其作为函数调用的例子

<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>document</title><script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><script>//  将一个函数作为$的参数// $(function(){//    alert("核心函数~~")// })// alert("核心函数外~~")// 将选择器字符串作为参数$(function(){// 通过jQuery核心函数查询的结果可以直接调用click,因为其是jQUery对象 $("#btn01").click(function(){// alert("你点我干嘛")var btn = document.getElementById("btn01")// 所以为了区分 jQUery对象和DOM原生对象,// 我们一般为 jQUery对象 命名时,会为其加上一个$                var $btn2 = $("#btn01")// 将DOM对象作为参数传进去,可以将DOM对象转换为jQuery对象alert($(btn))//[object Object]alert(btn);//[object HTMLButtonElement]alert($btn2);//[object Object]var $h1 = $("<h1>我是一个标题</h1>")//会根据html代码创建元素alert($h1)//[object Object],是一个jQuery对象$("div").append($h1)//把创建的h1加入到div中})})     </script>
</head>
<body>    <div></div><button id="btn01" type="button">点我一下</button>
</body>

四、jQuery对象

jQuery对象

- 通过jQuery核心函数获得到的对象就是jQuery对象

- jQuery对象是jQuery中定义的对象,可以将其理解为DOM对象的升级

在jQuery对象中为我们提供了很多简单易用的方法来帮助我们简化DOM操作

- jQuery对象本质上是一个DOM对象的数组(类数组)

可以通过索引获取jQuery 对象中的DOM对象,注意获取的是DOM对象

- 当我们修改jQuery对象,它会自动修改jQuery对象中的所有元素

这一特点称为jQuery的隐式迭代

- 通常情况下,jQuery对象的方法的返回值依然是一个jQuery对象

所以我们可以调用一个方法后继续调用其他的jQuery对象的方法

这一特性称为jQuery对象的 链式调用

<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>document</title><script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script></head>
<body>    <button id="btn01">点我一下</button><ul><li id="swk">孙悟空</li><li id="zbj">猪八戒</li><li>沙和尚</li><li>唐僧</li></ul><script>$("#btn01").click(function(){var $li = $("li")//将其转换为jQuery对象// alert($li.length)// jQuery对象本质上是一个DOM对象的数组(类数组)// alert($li[0].textContent)// 用索引获取jQuery对象中的DOM对象,注意取出来的是DOM对象// $li.text("哈哈哈")//修改jQuery对象中的所有元素var text = $li.text()//读取文本,返回所有标签中的文本内容var id = $li.attr("id")//读取属性,只返回第一个标签的属性alert(text)//读取到其所有内容alert(id)//swk,  读取属性,只返回第一个标签的属性var result = $li.text("新的文本内容")alert(result === $li);//true  通常情况下,jQuery对象的方法的返回值依然是一个jQuery对象// $li.text("新的文本内容")返回jQuery对象,也就是$li$li.text("新的文本内容").css("color","red")//可以调用一个方法后继续调用其他的jQuery对象的方法// jQuery对象的 链式调用})</script>
</body>

五、jQuery对象操作class

addClass( )  

- 为jQuery对象添加一个或多个class

- 可以接收一个回调函数作为参数,

回调函数中有两个参数:1.当前元素的索引,2.当前元素的类名

在回调函数中this 就是当前的元素,但this是一个DOM对象,不能调用jQuery对象的方法

<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>document</title><script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><style>.box1{width: 200px;height: 200px;background-color: #bfa;}.box2{border: 10px red solid;}.box3{background-color: orange;}</style><script>$(function(){// 为按钮绑定响应函数$("#btn").click(function(){// // 为box1添加class// // addClass()可以为元素添加一个或多个class// $(".box1").addClass(["box2","box3"])//可以使用数组的形式添加多个class//                               // 与"box2 box3"相同//           // 具有隐式迭代的特点,可以为所有的box1类添加class// addClass可以接收一个回调函数作为参数$(".box1").addClass(function(index,className){// alert(index + "--" + className)// 在回调函数中this 就是当前的元素alert(this);//[object HTMLDivElement]// 说明this是一个DOM对象,不能调用jQuery对象的方法if(index % 2 == 0){// 添加box2// this.classList.add("box2") //this是一个DOM对象$(this).addClass("box2")//将this 转换为jQuery对象,可以调用jQuery对象的方法}else{// 添加box3// this.classList.add("box3")$(this).addClass("box3")}})})})</script>
</head>
<body>    <button id="btn">点我一下</button><hr><div class="box1"></div><div class="box1"></div><div class="box1"></div></body>

 hasClass( )

- 检查 jQuery对象是否含有某个class

removeClass( )

- 删除jQuery对象的指定class

toggleClass( )

- 切换jQuery对象的指定class

六、addClass补充

addClass( )的回调函数的返回值会成为当前元素的class

<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>document</title><script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><style>.box1{width: 200px;height: 200px;background-color: #bfa;}.box2{border: 10px red solid;}.box3{background-color: orange;}</style><script>$(function(){// 为按钮绑定响应函数$("#btn").click(function(){$(".box1").addClass(function(index){// 回调函数的返回值会成为当前元素的class// return ["box2","box3"]if(index % 2 == 0){return "box2"}else{return "box3"}})})})</script>
</head>
<body>    <button id="btn">点我一下</button><hr><div class="box1"></div><div class="box1"></div><div class="box1"></div></body>

七、jQuery对象复制

clone( )   用来复制jQuery对象

- 只会复制元素本身,不会复制元素的事件

- 在clone( )中传入一个参数true,表示不仅复制元素本身,还包括其事件、数据等

<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>document</title><script src="https://lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.6.0/jquery.js"></script><script>/* 点击按钮,使得孙悟空添加到 list2 中*/$(function(){$("#list li:nth-child(1)").click(function(){alert("孙悟空")})// clone( )用来复制jQuery对象// var $swk = $("#list li:nth-child(1)").clone()// 只会复制元素本身,不会复制元素的事件,所以在list2中添加的孙悟空不会有点击出现“孙悟空"的事件var $swk = $("#list li:nth-child(1)").clone(true)// 在clone()中传入一个参数true,表示不仅复制元素本身,还包括其事件、数据等var $list2 = $("#list2")$("#btn").click(function(){$list2.append($swk)})})</script>
</head>
<body>    <button id="btn">点我</button><hr><ul id="list"><li>孙悟空</li><li>猪八戒</li></ul><ul id="list2"><li>沙和尚</li><li>唐僧</li></ul>
</body>

jQuery简介、引入jQuery、jQuery核心函数、jQuery对象、jQuery对象操作class、addclass补充、jQuery对象复制——jQuery相关推荐

  1. jQuery→简介引入、jQuery类数组对象$()与DOM对象、各种选择器、attr()、html() 、text()、val()

    官网下载 https://jquery.com/download/ jQuery对象与DOM对象 jQuery类数组对象$('')转DOM对象 DOM对象转jQuery对象 id选择器 类选择器 元素 ...

  2. 解密jQuery内核 DOM操作的核心函数domManip

    domManip是什么 dom即Dom元素,Manip是Manipulate的缩写,连在一起就是Dom操作的意思. .domManip()是jQuery DOM操作的核心函数 对封装的节点操作做了参数 ...

  3. jQuery(动画,核心函数)

    基本的HTML布局 <div id="box"><img src="1.jpg" alt=""><img sr ...

  4. jQuery height()、innerHeight()、outerHeight()函数的区别详解

    参考来源:http://www.jb51.net/article/84897.htm 代码示例(可复制到编辑器直接打开): 1 <!DOCTYPE html> 2 <html lan ...

  5. JavaWeb开发 前端语言:jQuery(一) jQuery核心函数、jQuery对象、jQuery选择器、以及jQuery元素筛选

    JavaWeb开发 前端语言:jQuery 1.jQuery介绍 1.1 jQuery的初使用 1.2 使用jQuery的常用问题解析 2. jQuery核心函数介绍 3.区分jQuery对象与dom ...

  6. jQuery的核心函数

    jQuery的核心函数有两个$和jQuery 我们拿两个例子来说一下 这两种代码都可以执行通过

  7. Mr.J-- jQuery学习笔记(二)--核心函数jQuery对象

    核心函数 函数列表 函数说明:jQuery()    主要用于获取HTML DOM元素并将其封装为jQuery对象 jQuery(): jQuery()函数是jQuery库的最核心函数,jQuery的 ...

  8. [jQuery基础] jQuery核心函数和工具方法

    核心函数 核心函数 调用jQuery的核心函数 $() jQuery 传递一个函数 $(function () {alert("hello lnj") } 接受一个字符串选择器 返 ...

  9. jQuery简介-01

    目录 异步请求局部刷新 架构 技术栈 执行过程 jQuery简介 什么是jQuery jQuery的语法 jQuery的优势 jQuery的使用 文档就绪事件 测试 总结 异步请求局部刷新 架构 主流 ...

最新文章

  1. java中四种常用的引用类型_java中四种引用类型
  2. 设置远程访问mysql服务端的日志
  3. 平行相似定理_初中数学知识点----相似三角形
  4. androidstudio表格中填充 宽跟长一样_Excel表格的基本操作教程,覆盖表格制作的10大知识!...
  5. 分块读取Blob字段数据(Oracle)
  6. c语言电子计算器课程设计报告,计算机程序设计课程设计报告.doc
  7. 机器学习小字典(一)——SVM
  8. 解决手机端上的iframe无法触摸滚动
  9. bert模型使用记录
  10. 什么是云服务器ECS?
  11. WPF打开子窗口给父窗口添加蒙版效果
  12. VBA完整学习笔记1-39集(共60集)
  13. 业绩堪忧,上市曲折,友宝梦醒港股?
  14. PPT怎么用100张照片做照片墙?
  15. 双线性插值算法推导及代码实现
  16. 哈工大 计算机系统大作业 程序人生-Hello’s P2P From Program to Process
  17. PI数据库开发-java(读写pi中的时序数据和关系数据)
  18. Android OTA版本任意升级
  19. 使用一个高数值孔径离轴抛物面反射镜对飞秒脉冲聚焦
  20. CSS之通过伪元素添加图标字体

热门文章

  1. eclipse导出Jar包包含第三方jar包和图片资源
  2. 22.Isaac教程--使用 Isaac Sight可视化
  3. 台式电脑怎么解除自动锁计算机,电脑不小心被锁了怎么办如何解除开机密码
  4. 招商银行-FinTech精英训练营初赛-编程题
  5. 图片懒加载, Vue-Lazyload实现懒加载
  6. 金融风控场景下:数据分析、模型与策略。
  7. 不是有效的psd文件怎么修复_毛孔粗大怎么修复最有效
  8. 如何用Nearby Service开发针对附近人群的精准广告推送功能
  9. 火影忍者插曲(不是主题曲或者片尾曲)
  10. Android问题解决