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 实践---创建元素包装集的更多相关文章

  1. JavaScript 、jQuery动态创建元素的关键字~

    JavaScript动态创建元素: 1.创建元素  如:a 标签 var alink= document.createElement("a"); 2.j添加元素属性 alink.h ...

  2. 解决jquery动态创建元素绑定事件失效问题

    存在问题 在我们使用jquery动态创建元素后往往会遇到一些问题,如: 给.button按钮绑定了点击时间,执行alert:(1); 点击事件代码如下: <script>$("# ...

  3. jQuery如何创建元素

    1.$("<ul>").attr("id","taglist").appendTo("#tagCloud") ...

  4. jquery动态创建元素 div元素随垂直滚动条位置变化置顶显示

    刚打开页面效果 拖动滑动条之后效果 页面代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" & ...

  5. jquery动态创建元素

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  6. 从零开始学习jQuery (三) 管理jQuery包装集

    本系列文章导航 从零开始学习jQuery (三) 管理jQuery包装集 一.摘要 在使用jQuery选择器获取到jQuery包装集后, 我们需要对其进行操作. 本章首先讲解如何动态的创建元素, 接着 ...

  7. 4月12日学习笔记——jQuery管理包装集

    创建新的元素 (1)使用 HTML DOM 创建元素 //使用 Dom 标准创建元素 var select = document.createElement("select"); ...

  8. jQuery学习笔记(3)-操作jQuery包装集的函数

    一.前言 在使用jQuery选择器获取到jQuery包装集后,我们就要对这些包装集进行各种操作 二.创建新的元素 1.使用HTMLDOM创建元素 (1)什么是DOM 当网页被加载时,浏览器会创建页面的 ...

  9. jQuery动态创建html元素的常用方法汇总

    在使用jQuery进行WEB程序设计的时候非常有用.分享给大家供大家参考.具体方法如下: 一般来说,可以通过以下几种方式动态创建html元素: 1.使用jQuery创建元素的语法 2.把动态内容存放到 ...

随机推荐

  1. C++:链表(初识链表)

    介绍 链表是把若干个对象用指针串联起来,形成一个链状的数据结构,链表在开发中很重要. 1.链表特征:只需要知道一个链表头,就能访问每个节点的对象. 2.链表遍历:通过每个节点指针next来对的下一个节 ...

  2. C语言细节

    一些常见细节 int *p[]和 int (*p)[] 的区别 int *p[4]; //定义一个指针数组,该数组中每个元素是一个指针,每个指针指向哪里就需要程序中后续再定义了. int (*p)[4 ...

  3. 有关Linux服务器的一些配置

    1.Redis部署 1.版本 redis-3.0.72.上传解压 3.编译 make && make install 问题:/bin/sh: cc: command not found ...

  4. time() 函数时间不同步问题

    1.时区设置问题 处理方法:编辑php.ini  搜索 “timezone” 改写为 PRC 时区 2.服务器时间不同步 处理方法:设置服务器时间和本地时间进行同步

  5. Python【Network/XHR/json】

    ##################################################################### 制定一个目标(爬取周杰伦的歌曲清单): 根据目标,确认一个方 ...

  6. Python笔记008函数(2)

    1.        昨日内容回顾: def 函数(): 函数体 return 值 如果不写return,默认返回None.可以单独返回一个值,也能够以元组的形式返回多个值.(不要把print和retu ...

  7. 硬件实现IIC协议读取EEPROM

    我TMD也是服了,反正我板子搞了半天也不成功我也不知道为什么,野火STM32-MINI,一直卡EV5,不管了 先代码沾上 工程目录(板子为野火STM32 MINI) 串口相关代码: bsp_usart ...

  8. 【动态规划】Concerts

    Concerts 题目描述 John enjoys listening to several bands, which we shall denote using A through Z. He wa ...

  9. (十五)struts2之注解

    一.作用 以用来替换struts.xml配置文件 使用前提 :必须引入struts2-convention-plugin-2.3.14.jar 这个jar包 二.参数 @Action来代替<ac ...

  10. SpringMVC 出现 406(Not Acceptable)

    首先,需要清楚,http state 406代表什么意思: 406是HTTP协议状态码的一种,表示无法使用请求的特性来响应请求的网页.一般指客户端浏览器不接受所请求页面的MIME类型. 出现这样的错误 ...