jQuery Selector选择器小结


Posted in Javascript onMay 06, 2010

//jQuery 选择器 $
//$(expression,[context]) return jQuery
//Unit One
//expression 之 CSS 定义符 就是以CSS语法表示所要选择的元素

// $("*"); // 表示页面所有元素标签
// $("th, td") // 表示所有<th><td>元素标签
// $("a") // 表示所有<a>元素标签
// $("div#onlydiv"); // 表示CSS选择中id=onlyidv的元素 $("#ID")为全文档匹配
// $("#rating"); // 表示id=rating的元素
// $("#orderedlist > li"); // 表示id=orderedlist 所有子元素,但不包括子元素下的子元素
// $("#orderedlist li:last"); // 表示id=orderedlist 中li最后一个元素
// $("#orderedlist li:first"); // 表示id=orderedlist 中li第一个元素
// $("#orderedlist li:nth- child(0)"); //表示id=orderedlist 中li第(N)个元素 n为数组下标
// $("button:only-child"); //表示 css选择中的它为父容器唯一的元素
// $(".stuff:empty"); // 表示css选择中的空元素
// $(".buttons:enabled"); // 表示css选择中的正常启用的元素
// $(".buttons:disabled"); // 表示css选择中的非启用元素
// $("input:checked"); // 表示css选择中的选中的元素
// $("button:not(.not)"); // 表示css选择中的去除not()中的元素
// $("button.not"); // 表示css选择中的class=not的元素 $(".CLSS")为全文档匹配
// $("#orderedlist2 li"); // 表示id=orderedlist 所有子元素且包括所有子元素的子元素
// //alert($("#orderedlist ~ li").length);
// $("#orderedlist,.buttons,li"); //匹配 css选择符的元素

//expression 之 根据元素属性选择
// alert($("button[@class]").length); // 表示有class属性的元素
// alert($("button[@class=not").length); // 表示有class属性且值等于not的元素
// alert($('button[@class^=not').length); // 表示有class属性且值开头匹配not的元素
// alert($('button[@class$=not').length); // 表示有class属性且值结尾匹配not的元素
// alert($('button[@class*=not').length); // 表示有class属性且值中匹配not的元素
//expression 之 XPATH 过滤器 XPATH语法来表示需要选择的页面元素
//$("ol[@id^='orderedlist']").find("li:contains('First')").each(function(i) {
//// $(this).html( $(this).html() + " BAM! " + i );
// $(this).mouseover(function(){
// $(this).css("color","red");
// });
// $(this).mouseout(function(){
// $(this).css("color","#000");
// });
// });
//查找ol标签且属性 id=orderedlist的所有元素,这里有两种写法
//ol[@id='orderedlist'] 定位父元素 直接用each 迭代
//ol[@id='orderedlist']/* 所有父元素下的子元素 使用find('child- element').each()迭代

//Unit two
///$( html, [ownerDocument]) return jQuery
//这个函数允许传入html元素文本,构造器会产生这个HTML文本所创造的jQuery对象,这个对象可以是原本没有的,也可是原本页面上存在的
//$('<p>hello</p>').appendTo("h2"); //生成一个标记文本 并追加到页面h2标签内
//也可以 将原本页面元素取出追加
//$("input",this).appendTo("h2"); //注意,这里取出的页面元素,是移动!而不是复制

///$(elements) return jQuery
//这个函数允许直接传入DOM
//$(document.forms[0].elements).appendTo("h2"); // 可以参考DOM文档
//$(callback) return jQuery

//以下是selector一些说明
/*
基础:

#id:根据对象的id属性获取对象。
element:匹配某一HTML标签的所有对象
.class:根据对象的class属性获取对象
*:获取所有的对象
selector1, selector2, selectorN:获取多个选择符的合集,不剔出重复项

层级选择符:
ancestor descendant:这个选择符就是空格,表示先找到第一个选择符的所有对象,然后在他的子孙节点中找到所有符合第二个选择符的对象。
parent > child:这个选择符就是大于号,表示先找到第一个选择符的所有对象,然后在他的子节点(不能是孙节点)中找到所有符合第二个选择符的对象。
prev + next:这个选择符就是加号,表示先找到第一个选择符的所有对象,然后找和他同级的紧跟着的下一个节点同时符合第二个选择符的对象。
prev ~ siblings:这个选择符就是~号,表示先找到第一个选择符的所有对象,然后找和他同级的以后所有节点里面同时符合第二个选择符的对象。

基础过滤符:
:first:匹配多个对象中的第一个对象
:last:匹配多个对象中的最后一个对象
:not(selector):匹配去除了not后面选择符中内容的项
:even:匹配所有对象中的第偶数个
:odd:匹配所有对象中的第奇数个
:eq(index):匹配某一下表的单独某元素
:gt(index):匹配大于某一下标的所有元素
:lt(index):匹配小于某一下标的所有元素
:header:匹配所有的header元素,例如 h1,h2,h3,h4,h5,h6
:animated:匹配所有有动画效果的元素

文本过滤符:
:contains(text):匹配内部拥有该文本元素的对象,包含间接有用的情况
:empty:匹配所有没有子元素的对象
:has(selector):匹配所有至少含有一个子选择符的对象
:parent:匹配所有的父对象,父对象包含那些只含有文本的对象

可见性过滤符:
:hidden:匹配所有隐藏对象,或者input中的hidden类型
:visible:匹配所有可见的对象

属性过滤符:
[attribute]:匹配拥有某一属性的所有对象
[attribute=value]:匹配拥有某一属性和值的对象
[attribute!=value]:匹配拥有某一属性,且不是某一值的对象
[attribute^=value]:匹配拥有某一属性,且以某一值开头的对象
[attribute$=value]:匹配拥有某一属性,且以某一值结尾的对象
[attribute*=value]:匹配拥有某一属性,且包含某一值的对象
[selector1] [selector2][selectorN]:匹配同时符合多个属性选择符的对象

子过滤符:
:nth- child(index/even/odd/equation):匹配子元素中的某一下标/偶数/奇数/等式的对象,:eq(index)只能匹配某单一对象的子元素特征,而这个方法可以匹配多个对象的某一子元素共同特征
:first-child:匹配第一个子元素
:last- child:匹配最后一个子元素
这两个匹配符也可以对多个父对象的所有子元素进行匹配操作
:only-child:如果一个父元素只有一个子元素,就匹配这个子元素

表单过滤符
Name Type

:input Returns: Array<Element(s)>
匹配表单内input元素

:text Returns: Array<Element(s)>
匹配表单内 input type为text的元素

:password Returns: Array<Element(s)>
匹配表单内input type为password的元素

:radio Returns: Array<Element(s)>
匹配表单内input type为radio的元素

:checkbox Returns: Array<Element(s)>
匹配表单内input type为checkbox的元素

:submit Returns: Array<Element(s)>
匹配表单内input type为submit的元素

:image Returns: Array<Element(s)>
匹配表单内image的元素

:reset Returns: Array<Element(s)>
匹配表单内 input type为reset的元素

:button Returns: Array<Element(s)>
匹配表单内input type为button的元素

:file Returns: Array<Element(s)>
匹配表单内input type为file的元素.

:hidden Returns: Array<Element(s)>
匹配表单内input type为hidden的元素或者hidden区域

:enabled Returns: Array<Element(s)>
匹配所有启用元素

:disabled Returns: Array<Element(s)>
匹配所有非启用元素

:checked Returns: Array<Element(s)>
匹配所有选中元素

:selected Returns: Array<Element(s)>
匹配所有下拉列表选中元素

*/

Javascript 相关文章推荐
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
Feb 17 Javascript
原生javascript实现图片轮播效果代码
Sep 03 Javascript
javascript动态向网页中添加表格实现代码
Feb 19 Javascript
Javascript正则控制文本框只能输入整数或浮点数
Sep 02 Javascript
javascript基于DOM实现省市级联下拉框的方法
May 14 Javascript
js鼠标点击图片切换效果实现代码
Nov 19 Javascript
利用Jquery实现几款漂亮实用的时间轴(附示例代码)
Feb 15 Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
微信小程序自定义带价格显示日历效果
Dec 29 Javascript
微信小程序中显示倒计时代码实例
May 09 Javascript
IE11下CKEditor在Bootstrap Modal中下拉问题的解决
Sep 25 Javascript
JS实现百度搜索框
Feb 25 Javascript
Jquery 动态添加按钮实现代码
May 06 #Javascript
jquery DOM操作 基于命令改变页面
May 06 #Javascript
JQuery 学习笔记01 JQuery初接触
May 06 #Javascript
Jquery 扩展方法
May 06 #Javascript
javascript 获取页面的高度及滚动条的位置的代码
May 06 #Javascript
屏蔽F1~F12的快捷键的js函数
May 06 #Javascript
MC Dialog js弹出层 完美兼容多浏览器(5.6更新)
May 06 #Javascript
You might like
为IP查询添加GOOGLE地图功能的代码
2010/08/08 PHP
浅析PHP递归函数返回值使用方法
2013/02/18 PHP
关于PHP堆栈与列队的学习
2013/06/21 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
php + nginx项目中的权限详解
2017/05/23 PHP
PHP实现的多维数组去重操作示例
2018/07/21 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
SUN的《AJAX与J2EE》全文译了
2007/02/23 Javascript
再论Javascript下字符串连接的性能
2011/03/05 Javascript
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
JavaScript生成GUID的多种算法小结
2013/08/18 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
JavaScript与ActionScript3两者的同性与差异性
2016/09/22 Javascript
微信小程序 window_x64环境搭建
2016/09/30 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
js计算两个时间差 天 时 分 秒 毫秒的代码
2019/05/21 Javascript
js实现随机div颜色位置 类似满天星效果
2019/10/24 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
vuex刷新后数据丢失的解决方法
2020/10/18 Javascript
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
python BeautifulSoup设置页面编码的方法
2015/04/03 Python
python对url格式解析的方法
2015/05/13 Python
PyQt5每天必学之创建窗口居中效果
2018/04/19 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
python Django的web开发实例(入门)
2019/07/31 Python
pygame实现俄罗斯方块游戏(AI篇2)
2019/10/29 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
Django ORM判断查询结果是否为空,判断django中的orm为空实例
2020/07/09 Python
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
土木工程毕业生自荐信
2013/09/21 职场文书
公司门卫工作职责
2014/06/28 职场文书
明星员工获奖感言
2014/08/14 职场文书
给领导的感谢信范文
2015/01/23 职场文书
分享五个Node.js开发的优秀实践 
2022/04/07 NodeJs