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语言 - cJSON解析特定格式 含有数组array类型的数据

    在ESP32中使用了cJSON库,发现很好用.最近服务器端的JSON格式越来越多样,还是有些注意点,需要做下笔记记录下来. cJSON *MAC_arry = cJSON_GetObjectItem( ...

  2. 编写python高质量python代码的59个有效方法

    第1条:确认自己的python版本 第2条:遵循PEP8的风格 1.空格 对于 占据多行的长表达式来说, 除了首行之外的其余各行都应该在通常的缩进级别上再加4个空格. 每行字符数不应该超过79. 2. ...

  3. GPIO 输出—使用固件库点亮 LED

    编程要点 1. 使能 GPIO 端口时钟:  2. 初始化 GPIO 目标引脚为推挽输出模式:  3. 编写简单测试程序,控制 GPIO 引脚输出高.低电平. LED的电路图 过程: 1.拷贝一个库函 ...

  4. 游记-pkupc&cts2019

    Day0 和boshi.Rayment组的队,昨天听学长说这次比赛可以加学分,他们信科的大部分人都会参加,估摸有两百多支队伍--然而奖品只有不到一百份 我要奖品呐! 上午十一点半到的北京,拉着行李提着 ...

  5. 谈jdbcTemplate与mybatis

    为什么会产生 Hibernate Mybatis 这类的dao层框架 传统的jdbc 虽然执行速度很快,但是开发效率很低,随着面向对象开发的设计思想,在面向对象编程中 将对象 进行持久化,存入关系型的 ...

  6. .NET中AOP实现

    静态织入,如:PostSharp(收费)动态织入1.使用Castle DynamicProxy不太方便的是需要在AOP的方法上加上virual关键字,配置较繁琐https://blog.csdn.ne ...

  7. XCode下在不同位置声明变量的用法(转)

    XCode下在不同位置声明变量的用法 方式一:直接在.h文件@interface中的大括号中声明. @interface Test : NSObject { NSString *str; // 私有变 ...

  8. java实现当前时间往前推N小时

    import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date; /** * @author sha ...

  9. Plugin 免费CSS生成器CssCollector

    下载: 百度云 自己在做Web开发的时候,页面里会有很多样式类,一个个复制到样式表里总感觉很麻烦 网上也没有找到合适的工具,可以一键生成样式表 所以,干脆自己做一个咯~ 案例展示 花了一天时间,CSS ...

  10. fastclick插件中存在的bug

    1.在vue项目中安装fastclick插件 npm install --save fastclick 2.在main.js中引入并绑定到body import FastClick from 'fas ...