jQuery简介
'''核心功能:兼容多浏览器的JavaScript库'''
1.一款轻量级的JS框架。jQuery核心js文件才几十kb,不会影响页面加载速度。
2.链式表达式。jQuery的链式操作可以把多个操作写在一行代码里,更加简洁。
3.跨浏览器兼容。jQuery基本兼容了现在主流的浏览器
它的宗旨就是:“Write less, do more.“
jQuery基本使用
jQuery下载地址
下载链接:https://jquery.com/
中文文档:https://jquery.cuishifeng.cn/
# 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,只支持最新的浏览器。需要注意的是很多老的jQuery插件不支持3.x版。目前该版本是官方主要更新维护的版本。
jQuery使用的时候需要先导入
有两种导入方式:
1.本地导入,提前下载文件并导入
2.网络CDN服务,只要计算机能够联网就可以导入。
ps:主要针对前端的免费CDN服务的一个网页:
HTML模板jQuery导入
'''在bootcdn里面复制jQuery的压缩版链接,在pycharm里面直接导入,下次可以直接使用'''
ps:如果想在本地使用的话,需要下载文件!
js与jQuery语法对比
给p标签添加颜色
<p id="p1">哈哈哈</p>
<p id="p2">嘻嘻嘻</p>
1.用js方法添加颜色:
let p1Ele = document.getElementById('p1');
p1Ele.style.color='red';
2.用jQuery添加颜色:
$('p').first().css('color','greenyellow').next().css('color','red');
# ps:jQuery不仅操作标签属性更快更便捷,而且能一下操作两行标签的属性
jQuery的两种写法:$()/jQuery()
jQuery查找标签
1,基本选择器
$('#id') 查找id选择器/$("TagName")标签选择器/$('.classname')class选择器
$('id.c1') 查找class是c1的标签
2.所有元素选择器
$('*') 查找所有标签
3.组合选择器
$("#id, .className, tagName")
4.层级选择器(x,y可以是任意标签)
$("x y");// x的所有后代y(子子孙孙)
$("x > y");// x的所有儿子y(儿子)
$("x + y")// 找到所有紧挨在x后面的y
$("x ~ y")// x之后所有的兄弟y
jQuery查找标签的结果与js的区别
'''二者结果集都是数组,但是功能有所区别'''
1.如果用索引取值,那么获得的都是标签对象。
标签对象无法调用jQuery方法
2.标签对象如果想要转换成jQuery对象,需要使用$()括起来
转为jQuery对象是伪类更好的调用jQuery方法
代码验证结果:
document.getElementsByTagName('p');
返回结果:HTMLCollection(2) [p#p1, p#p2, p1: p#p1, p2: p#p2]
document.getElementsByTagName('p')[0];
返回结果:<p id="p1" style="color:greenyellow;">哈哈哈</p>
$('p');
返回结果:S.fn.init(2) [p#p1, p#p2, prevObject: S.fn.init(1)]
$('p')[0]; # 变成了标签对象,此时只能使用js方法操作属性
返回结果:<p id="p1" style="color:greenyellow;">哈哈哈</p>
$(document.getElementsByTagName('p')[0])
返回结果:S.fn.init [p#p1]
ps:从标签对象转换成了jQuery标签对象,可以调用jQuery方法了
基本筛选器
:first // 第一个
:last // 最后一个
:eq(index)// 索引等于index的那个元素
:even // 匹配所有索引值为偶数的元素,从 0 开始计数
:odd // 匹配所有索引值为奇数的元素,从 0 开始计数
:gt(index)// 匹配所有大于给定索引值的元素
:lt(index)// 匹配所有小于给定索引值的元素
:not(元素选择器)// 移除所有满足not条件的标签
:has(元素选择器)// 选取所有包含一个或多个标签在其内的标签(指的是从后代元素找)
单表筛选器(属性选择器优化版)
代码:
<p><input type="text" class="a" disabled></p>
<p><input type="password" class="a"></p>
<p><input type="radio" class="b" checked>a</p>
<p><input type="radio" class="b" checked>b</p>
<p><input type="checkbox" class="c" checked>d</p>
<p>
<select name="" id="d1">
<option value="1">hhaha</option>
<option value="2" selected>heiehh</option>
<option value="3">heheh</option>
</select>
查找结果:
$('input[type="password"]');
$(':password');
# 两个结果一致 S.fn.init [input.a, prevObject: S.fn.init(1)]
$(':disabled'); 查找disabled属性 (禁用的标签)
$(':checked');
'''查找结果会自动返回selected'''
$('input:checked');
查找结果只有checked
$("selected");
查找结果只会返回selected
筛选器:
:text
:password
:file
:radio
:checkbox
:submit
:reset
:button
:enabled
:disabled
:checked
:selected
标签:类库,jQuery,p1,标签,兼容,查找,选择器
From: https://www.cnblogs.com/Hsummer/p/16631804.html