jQuery学习总结01-选择器
下面简单介绍一个常用的jQuery使用方法,其他详细的猛戳这里
一、选择器
1.parent > child
说明:在给定父类的情况下匹配所有的子类
示例:
描述:匹配表单中所有的的子级input元素
HTML代码:
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
<label>Newsletter:</label>
<input name="newsletter" />
</fieldset>
</form>
<input name="none" />
jQuery代码:
$('form > input')
结果:
[<input name="name" />]
2.prev + next
说明:匹配紧跟在prev后面的next元素
示例:
描述:匹配所有跟在 label 后面的 input 元素
HTML代码:
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
<label>Newsletter:</label>
<input name="newsletter" />
</fieldset>
</form>
<input name="none" />
jQuery代码:
$('label + input')
结果:
[<input name="name" />, <input name="newsletter" />]
3.prev ~ siblings
说明:匹配prev元素之后的所有siblings元素
示例:
描述:找到所有与表单form元素同辈的input元素
HTML代码:
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
<label>Newsletter:</label>
<input name="newsletter" />
</fieldset>
</form>
<input name="none" />
jQuery代码:
$('form ~ input')
结果:
[ <input name="none" /> ]
4、:first
说明:获取第一个元素
示例:
描述:获取ul下面的第一个li元素
HTML代码:
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>
jQuery代码:
$('li:first');
结果:
[li]
5、:not(selector)
说明:去除所有与给定选择器匹配的元素
示例:
描述:查找所有未选中的input元素
HTML代码:
<input name="apple" type="checkbox" />
<input name="organge" type="checkbox" />
<input name="flower" type="checkbox" checked="checked" />
jQuery代码:
$("input:not(:checked)")
结果:
[<input name="apple" type="checkbox" />, <input name="organge" type="checkbox" />]
6、:eq(index)
说明:匹配一个给定索引值的元素
示例:
描述:查找第二行
HTML代码:
<table>
<tr><td>Header 1</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
jQuery代码:
$("tr:eq(1)")
结果:
[<tr><td>Header 1</td></tr>]
7、:gt(index) 和 :lt(index)
说明:获取匹配所有大于给定索引值的元素和获取匹配所有小于给定索引值的元素
示例:
描述:查找第二行和第三行
HTML代码:
<table>
<tr><td>Header 1</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
jQuery代码:
$('tr:gt(0)')
结果:
[tr, tr]
8、:last
说明:获取匹配最后一个元素
示例:
描述:获取最后一个tr元素
HTML代码:
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>
jQuery代码:
$('li:last')
结果:
[li]
9、:header
说明:匹配如h1、h2、h3之类的标签元素
示例:
描述:给页面所有标签加上背景色
HTML代码:
<h1>Header 1</h1>
<p>Contents 1</p>
<h2>Header 2</h2>
<p>Contents 2</p>
jQuery代码:
$(":header").css("background", "red");
结果:
h1和h2的背景色已经为红色
[h1, h2]
10、:animated
说明:匹配所有正在执行动画效果的元素
示例:
描述:只对不在执行动画效果的元素执行一个动画特效
HTML代码:
<button id="run">Run</button>
<div style="background-color: #303a40;width: 20px;height: 20px;position: relative"></div>
jQuery代码:
$('#run').click(function(){
$('div:not(:animated)').animate({left: '+=20'},1000);
});
11、:focus
说明:匹配当前获取焦点的元素
示例:
描述:添加一个'focus'类名给那些有focus方法的元素
CSS代码:
.focused {
background: #abcdef;
}
HTML代码:
<div id="content">
<input tabIndex="1">
<input tabIndex="2">
<select tabIndex="3">
<option>select menu</option>
</select>
<div tabIndex="4">
a div
</div>
</div>
jQuery代码:
$( "#content" ).delegate( "*", "focus blur", function( event ) {
var elem = $( this );
setTimeout(function() {
elem.toggleClass( "focused", elem.is( ":focus" ) );
}, 0);
});
12、:contains(text)
说明:匹配包含给定文本的元素
示例:
描述:查找所有包含John的div元素
HTML代码:
<div>John Resig</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J. Ohn
jQuery代码:
$('div:contains("John")')
结果:
[div, div]
13、:empty
说明:匹配不包含子元素或者文本为空的元素
示例:
描述:查找不包含子元素或文本为空的元素
HTML代码:
<table>
<tr>
<td>Value 1</td>
<td></td>
</tr>
<tr>
<td>Value 2</td>
<td></td>
</tr>
</table>
jQuery代码:
$('td:empty')
结果:
[td, td]
14、:has(selector)
说明:匹配含有选择器所匹配的元素的元素
示例:
描述:给所有包含p元素的div元素添加一个text类
HTML代码:
<div>
<p>Hello</p>
</div>
<div>Hello again!</div>
jQuery代码:
$('div:has(p)').addClass('text');
15、:parent
说明:匹配含有子元素或者文本的元素
示例:
描述:查找所有包含文本或者子元素的td元素
HTML代码:
<table>
<tr>
<td>Value 1</td>
<td></td>
</tr>
<tr>
<td>Value 2</td>
<td></td>
</tr>
</table>
jQuery代码:
$('td:parent')
结果:
[ <td>Value 1</td>, <td>Value 2</td> ]
16、:hidden和:visible
说明:匹配所有不可见元素或者type为hidden的元素,:visible匹配所有可见元素
示例:
描述:查找隐藏的tr元素
HTML代码:
<table>
<tr style="display:none">
<td>Value 1</td>
</tr>
<tr>
<td>Value 2</td>
</tr>
</table>
<form>
<input type="text" name="email" />
<input type="hidden" name="id" />
</form>
jQuery代码:
$('tr:hidden');
$('input:hidden');
结果:
[tr]
[input]
17、[attribute]、[attribute=value]、[attribute!=value]、[attribute^=value]、[attribute$=value]、[attribute*=value]、[selector1][selector2][selectorN]操作
说明:[attribute] 匹配包含给定属性的元素
[attirbute=value] 匹配给定某个属性为value值的元素
[attribute!=value] 匹配所有不含有指定的属性,或者属性不等于特定值的元素。此选择器等价于 :not([attr=value]) 要匹配含有特定属性但不等于特定值的元素,请使用[attr]:not([attr=value])
[attribute^=value] 匹配给定的属性是以某些值开始的元素
[attribute$=value] 匹配给定的属性是以某些值结尾的元素
[attribute*=value] 匹配给定的属性包含某些值的元素
[selector1][selector2][selectorN] 复合性选择器,需要同时满足多个条件时使用
示例:
描述:1.查找含有id属性的的div元素
2.查找所有 name 属性是 newsletter 的 input 元素
3.查找所有 name 属性不是 newsletter 的 input 元素
4.查找所有 name 以 'news' 开始的 input 元素
5.查找所有 name 以 'letter' 结尾的 input 元素
6.查找所有 name 包含 'man' 的 input 元素
7.查找含有id属性,并且name属性是以man结尾的
HTML代码:
示例一:
<div>
<p>Hello!</p>
</div>
<div id="test2"></div> 示例二:
<input type="checkbox" name="newsletter" value="Hot Fuzz" />
<input type="checkbox" name="newsletter" value="Cold Fusion" />
<input type="checkbox" name="accept" value="Evil Plans" /> 示例三:
<input type="checkbox" name="newsletter" value="Hot Fuzz" />
<input type="checkbox" name="newsletter" value="Cold Fusion" />
<input type="checkbox" name="accept" value="Evil Plans" /> 示例四:
<input name="newsletter" />
<input name="milkman" />
<input name="newsboy" /> 示例五:
<input name="newsletter" />
<input name="milkman" />
<input name="newsboy" /> 示例六:
<input name="man-news" />
<input name="milkman" />
<input name="letterman2" />
<input name="newmilk" />
jQuery代码:
$('div[id]');
$('input[name="newsletter"]');
$('input[name^="news"]');
$('input[name$="letter"]');
$("input[name*='man']");$("input[id][name$='man']");
18、:first-child和:last-child
说明:匹配所给选择器(:之前的选择器)的第一个子元素,类似:first匹配第一个元素,但是:first-child可以同时匹配多个元素,即为每个父级元素匹配第一个子元素
匹配所给选择器(:之前的选择器)的最后一个子元素,类似:last匹配第一个元素,但是:last-child可以同时匹配多个元素,即为每个父级元素匹配第后一个子元素
示例:
描述:在每个 ul 中查找第一个 li
在每个 ul 中查找最后一个li
HTML代码:
<ul>
<li>John</li>
<li>Karl</li>
<li>Brandon</li>
</ul>
<ul>
<li>Glen</li>
<li>Tane</li>
<li>Ralph</li>
</ul>
jQuery代码:
$('ul li:first-child');
$('ul li:last-child');
19、:input
说明:匹配所有 input, textarea, select 和 button 元素
示例:
描述:查找所有的input元素,下面这些元素都会被匹配到。
HTML代码:
<form>
<input type="button" value="Input Button"/>
<input type="checkbox" /> <input type="file" />
<input type="hidden" />
<input type="image" /> <input type="password" />
<input type="radio" />
<input type="reset" /> <input type="submit" />
<input type="text" />
<select><option>Option</option></select> <textarea></textarea>
<button>Button</button> </form>
jQuery代码:
$(":input")
结果
[
<input type="button" value="Input Button"/>,
<input type="checkbox" />, <input type="file" />,
<input type="hidden" />,
<input type="image" />, <input type="password" />,
<input type="radio" />,
<input type="reset" />, <input type="submit" />,
<input type="text" />,
<select><option>Option</option></select>, <textarea></textarea>,
<button>Button</button>,
]
20、:text、:password、:radio、:checkbox、:submit、:image、:reset、:button、:file、:enable、:disable、:checked、:selected
说明::text 匹配所有的单行文本框
:password 匹配所有密码框
:radio 匹配所有单选按钮
:checkbox 匹配所有复选框
:submit 匹配所有提交按钮,理论上只匹配 type="submit" 的input或者button,但是现在的很多浏览器,button元素默认的type即为submit,所以很多情况下,不设置type的button也会成为筛选结果。为了防止歧义或者误操作,建议所有的button在使用时都添加type属性。
:image 匹配所有图像域
:reset 匹配所有重置按钮
:button 匹配所有按钮
:file 匹配所有文件域
:enable 匹配所有可用元素
:disable 匹配所有不可用元素
:checked 匹配所有选中的被选中元素(复选框、单选框等,select中的option),对于select元素来说,获取选中推荐使用 :selected
:selected 匹配所有选中的option元素
示例:
描述:查找所有文本框
查找所有密码框
查找所有单选按钮
查找所有复选框
查找所有提交按钮
查找所有图像域
查找所有重置按钮
查找所有按钮
查找所有文件域
查找所有可用元素
查找所有不可用元素
查找所有选中的复选框元素
查找所有选中的选项元素
HTML代码:
#特殊示例 查找所有的按钮
<form>
<input type="text" />
<input type="checkbox" />
<input type="radio" />
<input type="image" />
<input type="file" />
<input type="submit" />
<input type="reset" />
<input type="password" />
<input type="button" />
<select><option/></select>
<textarea></textarea>
<button></button>
</form> #特殊示例 查找所有选中的复选框元素
<form>
<input type="checkbox" name="newsletter" checked="checked" value="Daily" />
<input type="checkbox" name="newsletter" value="Weekly" />
<input type="checkbox" name="newsletter" checked="checked" value="Monthly" />
</form> #特殊示例 查找所有选中的选项元素
<select>
<option value="1">Flowers</option>
<option value="2" selected="selected">Gardens</option>
<option value="3">Trees</option>
</select>
jQuery代码:
$(':button');
$('input:checked')
$('select option:selected');
结果:
[ <input type="button" />,<button></button> ] [ <input type="checkbox" name="newsletter" checked="checked" value="Daily" />, <input type="checkbox" name="newsletter" checked="checked" value="Monthly" /> ] [ <option value="2" selected="selected">Gardens</option> ]
jQuery学习总结01-选择器的更多相关文章
- JQuery学习笔记——层级选择器
JQuery学习笔记--层级选择器 上一篇学习了基础的五种选择,分别是id选择器,class选择器,element选择器,*选择器 和 并列选择器.根据手册大纲,这篇学习的是层级选择器. 选择器: 1 ...
- JQuery学习笔记--01
JQuery使用的话,必做的一下件事就是下载JQuery库,才可以使用下载地址:http://jquery.com/ 下面就是引用JQuery库了: <script type="tex ...
- JQuery学习笔记——基础选择器
第一篇博客,现在原生安卓需求不大了.招聘的Android工程师都需要附带更多的其他技术.这也是开启我学习前端之路的开端.前端时间看了HTML.CSS等,在界面渲染这一块,就不多记录博客了.现在学习着J ...
- jQuery学习笔记01
1.jQuery介绍 1.1什么是jQuery ? jQuery,顾名思义,也就是JavaScript和查询(Query),它就是辅助JavaScript开发的js类库. 1.2 jQuery核心思想 ...
- jquery 学习日记之选择器
看完Jquery选择器的教程视频后,对jquery的选择器有一定的认识和了解,现整理一下知识: 一.jquery基本选择器,这类比较简单,一笔带过. #id 选择器,是选择 匹配id值中的第一个元素 ...
- jQuery学习笔记(2)-选择器的使用
一.选择器是什么 有了jQuery的选择器,我们几乎可以获取页面上任意一个或一组对象 二.Dom对象和jQuery包装集 1.Dom对象 JavaScript中获取Dom对象的方式 <div i ...
- JQuery学习笔记之选择器
JQuery与DOM对象 <div id="test1" class="test2"></div> DOM对象获取方式: var dom ...
- JQuery 学习笔记(01)
JQuery是继prototype之后又一个优秀的Javascript库.它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Oper ...
- jQuery学习之过滤选择器
基本过滤选择器 :first 选取第一个元素:$("div:first") :last 选取最后一个元素:$("div:last") :not(selector ...
- JQuery学习笔记系列(一)----选择器详解
笔者好长时间没有更新过博客园的笔记了,一部分原因是去年刚刚开始工作一段时间忙碌的加班,体会了一种每天加班到凌晨的充实感,之后闲暇时间了也因为自己懒惰没有坚持记笔记的习惯,现在重新拾起来. 借用古人的一 ...
随机推荐
- mysql PRIMARY KEY约束 语法
mysql PRIMARY KEY约束 语法 作用:PRIMARY KEY 约束唯一标识数据库表中的每条记录. 环形直线电机 说明:主键必须包含唯一的值.主键列不能包含 NULL 值.每个表都应该有一 ...
- HDU 6153 A Secret ( KMP&&DP || 拓展KMP )
题意 : 给出两个字符串,现在需要求一个和sum,考虑第二个字符串的所有后缀,每个后缀对于这个sum的贡献是这个后缀在第一个字符串出现的次数*后缀的长度,最后输出的答案应当是 sum % 1e9+7 ...
- onmouseover和onmouseout鼠标移入移出切换图片的几种实现方法
鼠标移入移出图片切换很常见的,那我们就来说说他的写法 第一种方法,也是最简单的一种,在html:里就可实现 <img class="img" src="img/do ...
- Oracle诊断: 服务器启后,无法连接
Oracle 服务器启后,使用Toad 客户端连接oracle 时候,遇到下面的错误: oracle ORA-12514: TNS: no listener TNS: listener does no ...
- 获取oracle数据库对象定义
在oracle中,使用DBMS_METADATA包中的GET_DDL函数来获得对应对象的定义语句.GET_DDL函数的定义如下: DBMS_METADATA.GET_DDL ( object_type ...
- 在Linux环境中运行python 项目
1首先创建一个虚拟环境或者在一个已有的虚拟环境中创建一个django项目 1.1 创建一个虚拟环境: mkvirtualenv my_django115 这会在 ~/Envs 中创建 my_djang ...
- Exchanger 源码分析
Exchanger 此类提供对外的操作是同步的: 用于成对出现的线程之间交换数据[主场景]: 可以视作双向的同步队列: 可应用于基因算法.流水线设计.数据校对等场景 创建实例 /** * arena ...
- Crypko 基于滚动条进行的动画是如何实现的?
Crypko 网站里面的下拉滚动条进行的动画感觉非常炫,于是研究了一下她的实现,发现她主要是使用了 ScrollMagic 这个库实现了基于滚动条的动画. 为什么这么确定就是用了 ScrollMagi ...
- python上下文管理,with语句
今天在网上看到一段代码,其中使用了with seam:初见不解其意,遂查询资料. 代码: #! /usr/bin/env python # -*- coding:utf-8 -*- import ti ...
- MongoDB--(NoSQL)入门介绍
NoSQL中比较优秀的产品 windows 下载安装 shell 基本操作(javascript 引擎) BSON扩充的数据类型(JSON的扩展,浮点型,日期型的扩充) step1.创建数据库 use ...