zoukankan      html  css  js  c++  java
  • end()与andSelf()

    end()

    回到最近的一个"破坏性"操作之前。即,将匹配的元素列表变为前一次的状态。

    如 果之前没有破坏性操作,则返回一个空集。所谓的"破坏性"就是指任何改变所匹配的jQuery元素的操作。这包括在 Traversing 中任何返回一个jQuery对象的函数--'add', 'andSelf', 'children', 'filter', 'find', 'map', 'next', 'nextAll', 'not', 'parent', 'parents', 'prev', 'prevAll', 'siblings' and 'slice'--再加上 Manipulation 中的 'clone'。

    end() 方法结束当前链条中的最近的筛选操作,并将匹配元素集还原为之前的状态。

    详细说明

    大多数 jQuery 的遍历方法会操作一个 jQuery 对象实例,并生成一个匹配不同 DOM 元素集的新对象。当发生这种情况时,应该会把新的元素集推入维持在对象中的堆栈内。每次成功的筛选方法调用都会把新元素推入堆栈中。如果我们需要老的元素 集,可以使用 end() 从堆栈中弹出新集合。

    andSelf()

    andSelf() 方法把堆栈中之前的元素集添加到当前集合。

    jquery是链式操作,意味着可以通过jquery对象获取另外一个jquery对象,比如:
    var $div = $("div");
    var $img = $div.find("img")

    现在来解释你的问题
    当进行以上操作时,jquery会记录一个类似链的东西:
    $div -> $img
    这个链说明,$img是由$div而来的,“而来的”三个字意思是$img和$div里面的dom对象是没有任何dom树上面的关系的,他们仅仅是一个来源问题

    $img.andSelf()将查找该链的前一个对象并将前一个对象中的dom和当前对象中的dom合并,然后返回,相当于$("div,div img")

    $img.end()将查找该链的前一个对象并直接返回前一个对象,相当于$img.end()包含的dom集合和$div包含的dom集合相同
  • 相关阅读:
    几个ID
    一百层高楼和两个棋子
    快速了解的链接 shell sed awk
    用shell实现一个“输入密码”程序
    i love you do you love me
    打造全新视觉环境
    【转】LINUX 环境变量总结
    TextBox输入限制
    获取CPU和硬盘序列号
    Lable属性设置(winform)
  • 原文地址:https://www.cnblogs.com/iceyhu/p/3479845.html
Copyright © 2011-2022 走看看