在许多情况下,jquery代码所做的事情变成了:生成jquery对象A,操作对jquery象A;更改为jquery对象B,操作jquery对象B;更改为jqueryC,操作jquery对象C......;

jquery的链式操作:

链式操作概述:生成一个jquery对象后,既要对它进行一次或多次的普通操作,同时还要对它进行更改操作。于是有必要把生成jquery对象储存在一个变量中,满足多次调用的需要。

例如:

$(function(){
$("div").click(function(){
    $(this).addClass("highlight").children("ul").show().end()
    .siblings().removeClass("highlight").children("ul").hide();
  })
})

更改为后代元素的集合:

1.children()方法:是用来选择子元素的

  children("选择器");//选贼子元素中,所有匹配选择器的直接子元素

  children();选择父元素的所有直接子元素//并不是选中,是已经切换了

2.find()方法:是用来选择后代元素的

  find("选择器");//选择后代元素中,所有匹配选择器的后代元素

  find();//不选择原先元素任何后代元素//写不写都一样,什么都选不中

3.contents()方法:选择匹配元素文本块(节点)和子节点

    --说明:包括空文本节点

更改为祖先元素的集合:

1.parent()方法:选择父元素

  parent("选择器");//选择父元素中,所有匹配选择器的元素

  parent();//选择所有父元素

2.parents()方法:选择祖先元素

  parents("选择器");选择祖先元素中,所有匹配选择器的元素

  parents();//选择所有祖先元素

3.parentsUntil()方法:祖先元素

  parentUntil("选择器");//选择祖先元素,直到找到匹配选择器的元素,但不包括匹配元素

  parentUntil();//选择所有祖先元素

4.offsetParent()方法:选择最近的祖先定位元素,且该元素的css属性display不能为none;所谓定位元素是指其css属性的position取值为relitive、absolute、fixed。如果祖先元素中没有合适的元素,则会选择<html>根元素。

5.closest("选择器")方法:选择器本身和其他祖先元素所有匹配选择器的元素。也即是说,先看看原先的元素是否匹配,否则会一层一层地向上找到最先匹配祖先元素。

更改为兄弟元素的集合

1.next()和prev()方法

  next("选择器"),在原先元素后面的第一个兄弟元素中,选择匹配选择器的元素。next()或next("*"),会选取原先元素后面的第一个兄弟。

  prev("选择器"),在原先元素前面的第一个兄弟元素中,选择匹配选择器的元素。prev()或prev("*"),会选取原先元素前面的第一个兄弟。

2.nextAll()、prevAll()和siblings()方法

  nextAll("选择器"),在原先元素后面的兄弟元素中,选取匹配选择器的元素。nextAll()或nextAll("*"),会选取原先元素后面的所有兄弟。

  prevAll("选择器"),在原先元素前面的兄弟元素中,选取匹配选择器的元素。prevAll()或prevAll("*"),会选取原先元素前面的所有兄弟。

  siblings(“选择器”),在原先元素所有兄弟元素中,选取匹配选择器的元素。siblings()或siblings(“*”),会选取原先元素所有兄弟。

更改为更多元素的集合

1.add("选择器")方法,在原先元素的基础上添加选取匹配选择器的元素;

说明:$("选择器1").add("选择器2")选取的元素等同于$("选择器1","选择器2");相当于群组选择器;//给祖先元素用。

jquery筛选器


1.eq()、first()、last()方法

eq(index)、first()、last()

2.slice(start,[end])方法:筛选索引从start到(end-1)的元素

  slice(2,5)//2,3,4

3.filter("选择器")方法:选择匹配选择器的元素

4.not("选择器")方法:选择不匹配选择器的元素

5.has("选择器")方法:选择匹配选择器的后代元素

end()为切换为前一个对象。

javascript-jquery-更改jquery对象的更多相关文章

  1. Jquery第一篇【介绍Jquery、回顾JavaScript代码、JS对象与JQ对象的区别】

    什么是Jquery? Jquey就是一款跨主流浏览器的JavaScript库,简化JavaScript对HTML操作 就是封装了JavaScript,能够简化我们写代码的一个JavaScript库 为 ...

  2. 【JQuery】jquery对象和javascript对象即DOM对象相互转换

    jQuery 对象是通过 jQuery 包装DOM 对象后产生的对象.jQuery 对象是 jQuery 独有的,其可以使用 jQuery 里的方法,但是不能使用 DOM 的方法:例如: $(&quo ...

  3. 在JavaScript中重写jQuery对象的方法

    jQuery是一个很好的类库,它给我们解决了很多的客户端编程,任何东西都不是万能的,当它不能满足我们的需求时我们需要对它进行重写,同时也不要影响其原有的功能或者修改其原有的功能:我现在的web应用程序 ...

  4. jQuery之Deferred对象详解

    deferred对象是jQuery对Promises接口的实现.它是非同步操作的通用接口,可以被看作是一个等待完成的任务,开发者通过一些通过的接口对其进行设置.事实上,它扮演代理人(proxy)的角色 ...

  5. 编写Javascript类库(jQuery版

    编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章 Posted on 2014-11-13 09:29 lzhdim 阅读(653) 评论(1) 编辑 收藏 本系列文 ...

  6. jQuery之Deferred对象P2

    转自 https://www.cnblogs.com/losesea/p/4415676.html deferred对象是jQuery对Promises接口的实现.它是非同步操作的通用接口,可以被看作 ...

  7. jQuery介绍 DOM对象和jQuery对象的转换与区别

    jQuery介绍 DOM对象和jQuery对象的转换与区别 jQuery介绍      jQuery: http://jquery.com/      write less, do more.   j ...

  8. 惊叹jQuery(解决jQuery对象到DOM的转换)

    jQuery是一个javascript框架,但绝对不是通常意义上的一些包装,个人感觉是一个改变js控制方式的框架.我们可以像美工通过写css分离页面代码一样,通过jQuery来分离页面与效果..下面转 ...

  9. jQuery的deferred对象详解(一)

    最近一段时间,都在研究jquery里面的$.Deffered对象,几天都搞不明白,其中源码的运行机制,网上查找了相关的资料,<jQuery的deferred对象详解>阮一峰老师的文章,里面 ...

  10. jquery 和 js 对象转换

    核心提示:jquery选择器得到的jquery对象和标准的 javascript中的document.getElementById()取得的dom对象是两种不同的对象类型,一般情况下,如S(’#id’ ...

随机推荐

  1. vue 上传头像悬浮显示文字

    template部分: 头像外部加一个 div <div class="user-info-head"> </div>   css 部分 <style ...

  2. Linux下SSH以及SSH秘钥

    一.基于秘钥方式实现远程连接 第一步:创建密钥对(在管理端服务器上操作) 中间的输入项可以直接回车 ssh-keygen -t dsa 第二步:分发公钥(在管理端服务器执行) 这个步骤需要输入一个ye ...

  3. Walker

      emmm.......随机化.   好吧,我们不熟.   考虑随机选取两组数据高斯消元消除结果后带入检验,能有超过1/2正确就输出.   其实方程就四个,手动解都没问题.   只是要注意看sin与 ...

  4. vs2015使用tcmalloc(windows)

    编译lib库 1.https://github.com/gperftools/gperftools  去tag中下载了2.4版本(最新的2.9.1版本 用了c++17的新特性折叠表达式,vs2015不 ...

  5. python多继承简单方法

    class people(object): #建创一个人类 def __init__(self,name,age): self.name = name self.age = age def eat(s ...

  6. C# 中 AppDomain 的一些理解

    C# 中 AppDomain 的一些理解 前言 一直想写一个这样的程序:与其它的程序完全解耦,但可以动态的加载其它程序,并执行其中的特定方法,执行完后可以卸载,完全不影响该程序本身.最近无意间发现了 ...

  7. Apache Dolphin Scheduler - Dockerfile 详解

    Apache DolphinScheduler 是一个分布式去中心化,易扩展的可视化 DAG 工作流任务调度系统.简称 DS,包括 Web 及若干服务,它依赖 PostgreSQL 和 Zookeep ...

  8. 【MySQL】MySQL基础(SQL语句、约束、数据类型)

    数据库的基本概念 什么是数据库? 用于存储和管理数据的仓库 英文单词为:DataBase,简称DB 数据库的好处? 可以持久化存储数据 方便存储和管理数据 使用了统一的方式操作数据库 -- SQL 常 ...

  9. 2.1Java基础

    2.1.9面向对象的三大特性(携程): 封装:把一个对象的属性隐藏在对象内部,外部对象不能直接访问这个对象的内部信息.但是可以提供一些可以被外界访问的方法来操作属性.就比如我们常常创建一个类,把他的属 ...

  10. 机器学习——最优化问题:拉格朗日乘子法、KKT条件以及对偶问题

    1 前言 拉格朗日乘子法(Lagrange Multiplier)  和 KKT(Karush-Kuhn-Tucker)  条件是求解约束优化问题的重要方法,在有等式约束时使用拉格朗日乘子法,在有不等 ...