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.把动态内容存放到 ...
随机推荐
- Java基础---Java常量
常量:在程序运行期间不变的量 分类: 类型 含义 数据举例 整数常量 所有整数 0,1, 567, -9 小数常量 所有小数 0.0, -0.1, 2.55 字符常量 单引号引起来,只能写一个字符, ...
- Linux_Ubantu下编译c++文件
1. 编译单个文件 利用cmake进行编译 首先在项目文件夹中创建.cpp文件 利用最简单的 hello world #include<iostream> using namespace ...
- 跟我一起学编程—《Scratch编程》第22课:颠弹力球
1. 能够熟练绘制角色和背景造型 2. 能够熟练控制角色角度.速度等 3. 能够熟练使用变量 4. 能够熟练使用循环.选择等指令控制程序 任务描述: 1. 绘制弹力小球.托板角色,背景造型. 2. 游 ...
- Struts2简介、初步使用
今日分享的是楼楼新学的一个框架,Struts2: 一:Struts2简介: Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2 ...
- Ubuntu 搭建 配置 nfs服务器
什么是NFS? NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NF ...
- Windows下Notepad++连接VMWare中的linux,然后无法安装NppFTP
一.关于Notepad++版本 我的版本是最新版本:Notepad++ v7.7 32bit 版本最好选择32bit的,看别处的说法是官网上有这样的说明: Note that the most of ...
- Nginx server配置
项目一般都需要前后端的配置,用二级域名把它区分开:首先在nginx.conf:里面加一句话: http{ #这里面有很多其他的配置 如:gzip FastCGI等等 include vhosts/*. ...
- HTML中关于动态创建的标签无法绑定js事件的解决方法:.on()方法的 [.selector]
在前端页面的时候,会经常遇到用JavaScript动态创建出来的Button按钮或其他标签无法使用点击事件的问题.如下代码,使用jquery在body中动态创建一个class为demo的Button按 ...
- C#基础--Virtual与abstract区别、重写
Virtual作用:子类可以对父类重写,虚方法是对多态特征体现.代表一类对象的所具有的公共属性或方法. public class Animal { public string Name { get; ...
- core项目打包时发现有的项目的xml文件不会被打包进去,怎么办?
我打包后发现打包后的文件夹内,不存在xml文件,所以swagger加载失败:然后经过测试发现Core项目打包的时候是默认不包含Xml文件的,VS里面也没有办法设置. 解决方法:手动修改项目文件,找到你 ...