一、概述
====
jQuery 是一个快速、简洁的 JavaScript 框架,是一个优秀的 JavaScript 代码库,jQuery 设计的宗旨是“write Less,Do More”,倡导写更少的代码做更多的事。它封装 JavaScript 常用的功能代码,提供简便的 JavaScript 设计模式,优化 HTML 文档操作,事件处理、动画设计和Ajax交互。
- JavaScript框架:本质上是一些js文件,封装了js的原生代码
二、使用 JQuery
===========
1、获取JQuery
-
目前jQuery有三个大版本:
-
1.x:兼容ie678,使用最为广泛的,官方只做BUG维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4 (2016年5月20日)
-
2.x:不兼容ie678,很少有人使用,官方只做BUG维护,功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x,最终版本:2.2.4 (2016年5月20日)
-
3.x:不兼容ie678,只支持最新的浏览器。除非特殊要求,一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。目前该版本是官方主要更新维护的版本。最新版本:3.2.1(2017年3月20日)
-
jquery-xxx.js 与 jquery-xxx.min.js区别:
-
jquery-xxx.js:开发版本。给程序员看的,有良好的缩进和注释。体积大一些
-
jquery-xxx.min.js:生产版本。程序中使用,没有缩进。体积小一些。程序加载更快
2、导入 JQuery 的 js 文件
-
导入min.js 文件,我使用的是 jquery-3.3.1.min.js 版本
-
在项目中创建js目录,把 jquery-3.3.1.min.js 复制到目录中去
-
在HTML页面导入:
3、JQuery对象和JS对象区别与转换
JQuery对象在操作时,更加方便,但是 JQuery 对象和 js 对象方法不通用的,很多时候需要两者相互转换
-
jq – > js : jq对象[索引] 或者 jq对象.get(索引)
-
js – > jq : $(js对象)
JQuery的使用
三、选择器
=====
选择器就是用来筛选具有相似特征的标签
1、基本语法
-
事件绑定:绑定按键 ==> $(“#but”).click(function(){…});
-
入口函数:$(function(){…});
-
样式控制:$(“#div1”).css(“background-color”,“red”);
2、选择器分类
【1】基本选择器
-
标签选择器(元素选择器)
-
语法: $(“html标签名”) 获得所有匹配标签名称的元素
-
id选择器
-
语法: $(“#id的属性值”) 获得与指定id属性值匹配的元素
-
类选择器
-
语法: $(“.class的属性值”) 获得与指定的class属性值匹配的元素
-
并集选择器:
-
语法: $(“选择器1,选择器2…”) 获取多个选择器选中的所有元素
【2】层级选择器
-
后代选择器
-
语法: $("A B ") 选择A元素内部的所有B元素
-
子选择器
-
语法: $(“A > B”) 选择A元素内部的所有B子元素
【3】属性选择器
-
属性名称选择器
-
语法: $(“A[属性名]”) 包含指定属性的选择器
-
属性选择器
-
语法: $(“A[属性名=‘值’]”) 包含指定属性等于指定值的选择器
-
复合属性选择器
-
语法: $(“A[属性名=‘值’][]…”) 包含多个属性条件的选择器
【4】过滤选择器
-
首元素选择器
-
语法: :first 获得选择的元素中的第一个元素
-
尾元素选择器
-
语法: :last 获得选择的元素中的最后一个元素
-
非元素选择器
-
语法: :not(selector) 不包括指定内容的元素
-
偶数选择器
-
语法: :even 偶数,从 0 开始计数
-
奇数选择器
-
语法: :odd 奇数,从 0 开始计数
-
等于索引选择器
-
语法: :eq(index) 指定索引元素
-
大于索引选择器
-
语法: :gt(index) 大于指定索引元素
-
小于索引选择器
-
语法: :lt(index) 小于指定索引元素
-
标题选择器
-
语法: :header 获得标题(h1~h6)元素,固定写法
【5】表单过滤选择器
算法刷题
大厂面试还是很注重算法题的,尤其是字节跳动,算法是问的比较多的,关于算法,推荐《LeetCode》和《算法的乐趣》,这两本我也有电子版,字节跳动、阿里、美团等大厂面试题(含答案+解析)、学习笔记、Xmind思维导图均可以分享给大家学习。
写在最后
最后,对所以做Java的朋友提几点建议,也是我的个人心得:
-
疯狂编程
-
学习效果可视化
-
写博客
-
阅读优秀代码
-
心态调整