JQuery基础知识==jQuery选择器
选择器是jQuery的基础,在jQuery中,对事件处理、遍历DOM和Ajax操作都依赖于选择器
1. CSS选择器
1.1 CSS是一项出色的技术,它使得网页的结构和表现样式完全分离。利用CSS选择器可以轻松的对某个元素添加样式而不用改动HTML结构,只需要通过添加不同的CSS规则,就可以得到不同样式的网页
1.2 要使某个样式样式应用于HTML元素,首先需要找到该元素。在CSS中,执行这一任务的表现规则就是CSS选择器
1.3 常用CSS选择器
标签选择器:p{color:red;}
ID选择器:#myId{color:red;}
类选择器:.myClass{color:red;}
群组选择器:p,.myClass,td{color:red}
后代选择器:#myParent a{} 选择myParent 后面的所有a标签
通配选择器:*{} 以文档的所有元素作为选择符
伪类选择器:
子选择器:E>F
临近选择器:E+F
属性选择器:E[attr]
注意:主流浏览器并非完全支持所有的选择器
1.4 将CSS应用到网页中的3种的方法
行间样式表;内部样式表;外部样式表
2. jQuery选择器
jQuery选择器完全继承了CSS的规则。利用jQuery选择器,可以非常方便和快捷的找出特定的DOM元素,然后为他们添加相应的行为,而无需担心浏览器是否支持这一选择器。
jQuery选择器的写法与CSS选择器的写法非常相似,只是作用效果不同。CSS选择器是找到元素后为元素添加样式;jQuery选择器是找到元素后为其添加行为。并且,jQuery选择器中涉及操作CSS样式的部分比单纯的CSS功能更强大,以及拥有跨浏览器的兼容性
2.1 jQuery选择器的优势
简洁的写法
支持CSS1到CSS3选择器:使用CSS选择器时,需要考虑主浏览器是否支持某些选择器,而jQuery选择器有极好的兼容性
完善的处理机制:
注意:$(".tt")获取的永远是对象,即使网页上没有此元素,因此当使用jQuery检查网页中是否存在某个元素时,就不可以使用if( $(".tt") )判断
而是判断元素的长度是否大于0 if( $(".tt").length>0 ) 或者转化成对象再判断 if( $(".tt")[0] )
2.2 jQuery选择器:基本选择器、层级选择器、过滤选择器、表单选择器
基本选择器:
$("#test"):选取id为test的元素(返回单个元素)
$(".test"):选取所有class是test的元素(返回集合元素)
$("p"):选取所有的<p>元素(返回集合元素)
$("*"):选择网页中的所有元素(返回集合元素)
$("p,#test,.test"):选择每一个选择器匹配到的元素集合
层次选择器:主要是获取后代元素、子元素、相邻元素和同辈元素等
$("div span"):选取div元素里的所有span(后代)元素
$("div>span"):选取div元素下的span(子)元素,$("div span")选取是后代元素
$("prev+next"):选取紧跟在prev后面的元素next(可以使用next()方法替代)
$("prev~sliblings"):选择prev元素之后的所有同胞元素(可以使用nextAll()替代)
注意:$("prev~div")只能选择prev元素后面的同辈div元素;而sliblings()方法与前后的位置无关,只要是同辈节点都可以匹配
过滤选择器:主要是通过特定的过滤规则筛选出所需的DOM元素,过滤器是冒号(:)开头。可以简单的分类为:基本过滤、内容过滤、可见性过滤、属性过滤、子元素过滤、表单对象属性过滤选择器
基本过滤选择器:
:first 选取第一个元素
:last 选取最后一个元素
:no(selector) 去除所有与给定选择器匹配的元素
:even 选取索引是偶数的所有元素 索引从0开始
:odd 选取索引是奇数的所有元素 索引从0开始
:eq(index) 选取索引等于index的元素
:gt(index) 选取索引大于index的元素
:lt(index) 选取索引小于index的元素
:header 选取所有的标题元素,例如h1,h2,h3等
:focus 选取当前获取焦点的元素
:animated 选取当前正在执行动画的所有元素
内容过滤选择器:他的过滤规则主要体现在它所包含的子元素或文本内容上
:contains(text) 获取含有文本内容为text的元素
:empty 选取不包含子元素或文本内容为空的元素
:parent 选取含有子元素或文本的元素
:has(selector) 选取含有选择器所匹配的元素的元素 $("div:has(p)")选取含有p元素的所有div元素
可见性过滤选择器:是根据元素的可见和不可见状态来选择相应的选择器
:hidden 选取所有不可见的元素(注:不仅包含样式属性display:none的元素,还包含type=hidden的元素和visibility:hidden的元素)
:visible 选取所有可见的元素
属性过滤选择器:主要是根据元素的属性来获取相应的元素
[attr] 选取拥有此属性的元素
[attr=value] 选取属性的值为value的元素
[attr!=value] 选取属性的值不是value的元素
[attr^=value] 选取属性的值以value开头的元素
[attr$=value] 选取属性的值以value结束的元素
[attr*=value] 选取属性的值包含value的元素
[attr|=value] 选取属性等于给定字符串或以该字符串为前缀的元素
[attr~=value] 选取属性用空格分割的值中包含一个给定值得元素
[attr1][attr2][attr3] 用属性选择器合并成一个符合选择器,满足多个条件。每选择一次,缩小一次范围
子元素过滤选择器
JQuery基础知识==jQuery选择器的更多相关文章
- 0417 jQuery基础知识
jQuery基础知识 jQuery需要引入一个js文件,并且这个文件在所有js代码之前(包括引入的其他js文件) 基础操作(对比js): 1.找标签: js:document.getElement.. ...
- jquery基础知识汇总
jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...
- JQuery基础知识梳理篇
这周没事,优化线上项目,因为前端都在赶项目,我又若菜.于是前端数据展示也要自己来.看javascript看到吐,决定梳理一下Jquery基础知识.敲黑板) 闲扯结束,进入正题. 选择器 介绍 jque ...
- JQuery基础知识(1)
JQuery基础知识(1) 对JQuery学习中遇到的小细节进行了整理和总结 1.JQuery hide()和show()方法,分别对选中的元素进行隐藏和显示,语法:hide()和show分别有对应的 ...
- JQuery基础知识(2)
JQuery基础知识(2) JQuery滑动效果 1. JQuery slideDown(); 语法: $(selector).slideDown(speed,callback); 可选的 speed ...
- jQuery基础知识--选择器与效果
$(this).hide()-----隐藏当前元素 $("p").hide()------隐藏所有段落 $(".test").hide()--隐藏所有class ...
- 【JQuery基础知识/statusCode(状态码)】---初学者必备
今天,给大家分享一下JQuery的基础知识,简单介绍一下JQuery高级_Ajax,和我们常见的一些statusCode(状态码)~~~ 如果存在错误,请大家多多指正留言~小女子在此谢过! 一.JQu ...
- jQuery基础知识总结
1. jQuery基本概念介绍 1.1 什么是jQuery 一个javascript库,把常用方法写到一个js文件中,需要的时候直接调用即可 学习jQuery就是学习一些方法 ...
- 【Python全栈-jQuery】jQuery基础知识
前端学习之jQuery 一. jQuery是什么? <1> jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. < ...
随机推荐
- Nginx入门介绍与安装
Nginx是什么? Nginx是俄罗斯人编写的十分轻量级的HTTP和反向代理服务器.发音:"engine X" Nginx能干什么? (1)Http反向代理 Nginx 支持正则表 ...
- C#之重载
前言 今天去看了看论坛,发现有些人对于重载还是很有疑问的,像大多数人一样,貌似知道重载方法这回事儿, 但是具体怎么应用,或者用重载方法的好处,好像还是一知半解,模模糊糊.我们都知道,重载方法的定义,甚 ...
- 10、OpenCV Python 图像二值化
__author__ = "WSX" import cv2 as cv import numpy as np #-----------二值化(黑0和白 255)---------- ...
- 设置SQL脚本大小敏感
1.设置SQL脚本大小写不敏感 USE [master] GO ALTER DATABASE [DatabaseName] COLLATE Chinese_PRC_CI_AI GO 2.设置大S ...
- phpsotrm 设置命名空间
PHPStorm 添加支持 PSR-4 命名空间前缀设置 许久没有更新博客啦, 太忙了, 七月这最后一天来写点自己在使用 PHPStorm 上的小却很有用的功能吧. PHPStorm 默认是使用 PS ...
- css3文本域焦点烟花效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【笔记】Pandas分类数据详解
[笔记]Pandas分类数据详解 Pandas Pandas分类数据详解|轻松玩转Pandas(5) 参考:Pandas分类数据详解|轻松玩转Pandas(5)
- Kibana6.x.x——启动后警告信息:Session cookies will be transmitted over insecure connections. This is not recommended.
启动Kibana后,如果你看到如下警告信息: server log [08:03:18.001] [warning][security] Session cookies will be transmi ...
- void类型指针的基本用法
void作为指针时可以用任意类型的的指针值都可以给它进行赋值和传递,但是输出时必须时显性输出 代码如下: #include<cstdio> #include<iostream> ...
- hdu6229 Wandering Robots 2017沈阳区域赛M题 思维加map
题目传送门 题目大意: 给出一张n*n的图,机器人在一秒钟内任一格子上都可以有五种操作,上下左右或者停顿,(不能出边界,不能碰到障碍物).题目给出k个障碍物,但保证没有障碍物的地方是强联通的,问经过无 ...