JQuery 实践---创建元素包装集
1. 利用选择器,选择将被JQuery包装的元素
标识和选择DOM元素。JQuery采用我们已经知道的CSS语法并且扩展了一些.为了利用JQuery来选择元素,请把选择器包装在$()中。
- 基本CSS选择器:
元素名 tag, 元素ID #,元素类 .classname,位置: p a.classname 以及组合 - 子选择器,容器选择器和特性选择器
* 匹配任何元素
E 匹配标签名为E的所有元素
E F 匹配标签名为F,作为E的后代节点的所有元素
E>F 匹配标签名为F,作为E的直接子节点的所有元素
E+F 匹配标签名为F,其前面是邻近兄弟节点E,E和F紧挨着
E~F匹配标签名为F,其前面是任何兄弟节点E,E和F可以不紧挨着
E:has(F) 匹配标签名为E,至少有一个标签名为F的后代节点
E.C 匹配带有类名C的所有元素E
E#I 匹配id特性值为I的所有E元素
E[A] 匹配含有属性A的所有E元素
E[A=V] 相等
E[A^=V] 开始
E[A*=V] 包含
E[A$=V] 结尾 - 位置选择
:first 页面的最先匹配,某个元素在页面(Scope)第一个出现的 :last 页面的最后匹配 :first-child 最先的子元素. 某元素作为最先的子元素 :last-child 最后的子元素 :only-child 返回没有兄弟节点的所有元素 :nth-child(n) 第n个子节点,n从1开始 :nth-child(odd|even) 偶数或奇数 :nth-child(Xn+Y) 根据传入的公式计算的第N个子节点 :even or :odd 页面范围内偶数或奇数的匹配元素 :eq(n) 第n个匹配元素,n从0开始 :gt(n) :lt(n)
- 自定义JQuery选择器
:animated 选择当前处于动态控制之下的元素 :button 任何Button :checkbox :checked :contains(foo) 只选择包含文本foo的元素 :disabled :enabled :file :header h1~h6 :hidden :image :input :not(filter) 与指定的筛选器求反,只能应用到筛选选择器上 :parent 选择拥有后代节点的元素 包括文本节点 :password :radio :reset :selected 选择已选中的选项元素 :submit :text 只选择文本字符元素 :visible 只选择可见元素
只支持一层嵌套
筛选选择器,通过对元素应用更高的选择标准,缩小正在匹配的元素的集合
查找选择器,查找与已选择元素具有某种关系的其他元素。可能扩大操作集
支持XPath的JQuery插件:http://jQuery.com/plugins/project/xpath
/html//form/fieldset
/html//form/*/input
//div/.. div的直接父元素
//div[@foo=bar]
//div[@p]
2. 创建并放置新的HTML元素到DOM中
$("<div>Hello</div>")
$("<div>")
利用这个技巧无法可靠地创建<script>元素
eg.
$("<div class='foo'> I have foo</div><div>I don't</div>").filter(".foo").click(function(){alert('I am foo');}).end().appendTo("#someparentDiv")
3.操作元素包装集
| 名称 | 函数 | 参数 | 返回值 | 例子 |
| 确定包装集大小 | size() | 元素的个数 | $("a").size() | |
| 从包装集获取元素 |
get(index) index(element) |
index不指定时,获取所有的元素以JS数组形式返回 元素的引用 |
一个DOM元素或DOM元素数组 传入元素的下标或-1 |
|
| 添加更多元素到包装集 | add(expression) | 字符串|元素|数组 | 包装集 | $('img[alt],img[title]') $('img[alt]').add('img[title]') $('img[alt]').add('<p>sdf</p>') |
| 从包装集里删除元素 | not(expression) | 字符串|元素|数组。 任何JQuery包装集都能够当成元素引用的数组来使用 | 包装集 | |
| 编程方式筛选包装集元素 | filter(expression) |
字符串|函数 字符串作为JQuery选择器,在包装集中留下匹配的元素.函数调用返回为False的从包装集中删除 隐试函数类型的筛选器 |
包装集 | |
| 根据元素在包装集的位置,获取包装集子集 | slice(begin[,end]) | 数字,包含begin,不包含end | 新建的包装集 | |
| 关系:返回原始包装集元素的所有唯一子元素组成的包装集 | children() | 包含字符串的参数 | 包装集 | |
| 关系:返回原始包装集袁术的内容的包装集,可能包含文本节点。 | contents() | 包装集 | 常用语获取<iframe>元素的内容 | |
| 返回原始包装集元素的所有唯一的下一个兄弟元素所组成的包装集 | next() | 包含字符串的参数 | 包装集 | |
| 返回原始包装集元素的所有后续兄弟元素的包装集 | nextAll() | 包含字符串的参数 | 包装集 | |
| 返回原始包装集元素的唯一直接父元素 | parent() | 包含字符串的参数 | 包装集 | |
| 祖先元素,但不包括文档跟元素 | parents() | 包含字符串的参数 | 包装集 | |
| prev() | 包含字符串的参数 | 包装集 | ||
| prevAll() | 包含字符串的参数 | 包装集 | ||
| 返回原始包装集元素的所有唯一兄弟元素所组成的包装集 | siblings() | 包含字符串的参数 | 包装集 | |
|
把现有包装集仔细搜索,并返回包含所有匹配传入选择器表达式的元素的新包装集 操作链中调用,力量才强大 |
find(selector) | 字符串,一个jQuery选择器 | 新包装集 |
wrappedSet.find('p cite') <==> $('p cite',wrappedSet) |
| 查找包含指定字符串的元素 元素体的内容的各个方面,包含标记和后代元素的特性值,但不匹配受测原始元素的标记和特性值 |
contains(text) | 字符串 | 新包装集 | |
| 测试包装集,是否至少包含一个匹配给定选择器元素 | is(selector) | 字符串,选择器表达式 | true/false | |
| 回退到前一个包装集 | end() | 前一个包装集 | $('img').clone().appendTo('#somewhere').end().addClass('beenCloned') | |
| 合并栈内最顶端的两个包装集,把当前包装集和前一个包装集合并为一个包装集 | andSelf() | 合并后的包装集 |
JQuery 实践---创建元素包装集的更多相关文章
- JavaScript 、jQuery动态创建元素的关键字~
JavaScript动态创建元素: 1.创建元素 如:a 标签 var alink= document.createElement("a"); 2.j添加元素属性 alink.h ...
- 解决jquery动态创建元素绑定事件失效问题
存在问题 在我们使用jquery动态创建元素后往往会遇到一些问题,如: 给.button按钮绑定了点击时间,执行alert:(1); 点击事件代码如下: <script>$("# ...
- jQuery如何创建元素
1.$("<ul>").attr("id","taglist").appendTo("#tagCloud") ...
- jquery动态创建元素 div元素随垂直滚动条位置变化置顶显示
刚打开页面效果 拖动滑动条之后效果 页面代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" & ...
- jquery动态创建元素
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- 从零开始学习jQuery (三) 管理jQuery包装集
本系列文章导航 从零开始学习jQuery (三) 管理jQuery包装集 一.摘要 在使用jQuery选择器获取到jQuery包装集后, 我们需要对其进行操作. 本章首先讲解如何动态的创建元素, 接着 ...
- 4月12日学习笔记——jQuery管理包装集
创建新的元素 (1)使用 HTML DOM 创建元素 //使用 Dom 标准创建元素 var select = document.createElement("select"); ...
- jQuery学习笔记(3)-操作jQuery包装集的函数
一.前言 在使用jQuery选择器获取到jQuery包装集后,我们就要对这些包装集进行各种操作 二.创建新的元素 1.使用HTMLDOM创建元素 (1)什么是DOM 当网页被加载时,浏览器会创建页面的 ...
- jQuery动态创建html元素的常用方法汇总
在使用jQuery进行WEB程序设计的时候非常有用.分享给大家供大家参考.具体方法如下: 一般来说,可以通过以下几种方式动态创建html元素: 1.使用jQuery创建元素的语法 2.把动态内容存放到 ...
随机推荐
- 《Mysql 一条 SQL 更新语句是如何执行的?(Redo log)》
一:更新流程 - 对于更新来说,也同样会根据 SQL 的执行流程进行. - - 连接器 - 连接数据库,具体的不做赘述. - 查询缓存 - 在一个表上有更新的时候,跟这个表有关的查询缓存会失效. - ...
- JVM -- 对象的概述和引用
一.概述 说起垃圾收集(Garbage Collection,GC),大部分人都把这项技术当做java语言的伴生产物,然后GC出现历史比java久远. GC需要完成的3件事情: 1.哪些内存需要回收 ...
- Linux虚拟机常用命令
参考原文链接:(https://blog.csdn.net/fanyun_01/article/details/51083585) 一.Linux虚拟机常用命令 # virsh list //查看已打 ...
- PLSQL Developer、汉化包官方下载及注册码
1.官方下载地址 https://www.allroundautomations.com/registered/plsqldev.html 2.找到对应安装包和语言包 3.先安装PLSQL Devel ...
- (六)mybatis之多对一关系(简单)
一.需求分析 需求: 查询所有订单信息及订单下的订单明细信息 分析: 一条订单只能由一个消费者下单,但是一条订单有多条订单明细. 二.创建数据库表和实体对象 Customer.java ...
- (二十)SpringBoot之集成mybatis:使用mybatis注解
一.使用mybatis注解的集成 1.1 引入maven依赖 <dependencies> <dependency> <groupId>org.springfram ...
- 奇妙的算法【7】-贪婪算法-dp
问题1描述:[贪婪算法,Dijistra算法] ①有一只兔子要从一个N*N的二维矩阵方格中从上跳到下面: ②每次只能向左或向下,越过一个方格,跳到下一个方格中: ③被越过的方格中的数值,表示该兔子越过 ...
- 奇妙的算法【10】TX--有效号码、最,小耗时、最小差值、差值输出、异或结果
昨晚刚刚写的几道算法题,难度也还行,就是全部AC有些困难,当时第一题AC.第二题AC 60%,第四题AC 40%,第五题没有时间写完了,这个应该全部AC了:其中第三题没有写出来 1,是否存在符合规范的 ...
- Tomcat服务器的数字证书 HTTPS 连接!
SUN公司提供了制作证书的工具keytool, 在JDK 1.4以后的版本中都包含了这一工具,它的位置为\bin\keytool.exe 注意要使用一下 cmd命令,请确认jdk环境变量可以使用,可以 ...
- ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 视图模板页
https://www.cnblogs.com/xlhblogs/archive/2013/06/09/3129449.html MVC Razor模板引擎 @RenderBody.@RenderPa ...