为了账号安全,请及时绑定邮箱和手机立即绑定
  • jQuery children() 方法 获得匹配元素集合中每个元素的子元素,选择器选择性筛选。 因为就jQuery可以是一个DOM的合集对象,所以children就需要遍历每一个合集中的直接子元素了,并且最后需要构建一个新的jQuery对象。 jQuery find() 方法 1、.find()方法返回被选元素的后代元素,一路向下直到最后一个后代。 2、.find()方法允许我们能够通过查找DOM树中的这些元素的后代元素,匹配的元素将构造一个新的jQuery对象。 3、.find()和.children()方法是相似的,但后者只是再DOM树中向下遍历一个层级。 4、.find()方法还可以接受一个选择器表达式,该选择器表达式可以是任何可传给$()函数的选择器表达式。如果紧随兄弟匹配选择器,它将被保留在新构建的jQuery对象中;否则,它被排除在外。 这个方法用的概率相当高,除了接受一个选择器外,还可以接受一个jQuery对象,我们可以看到.find()方法的内部实际上是调用的jQuery.find 也就是sizzle的引擎选择器。
    查看全部
    0 采集 收起 来源:遍历后代

    2015-09-15

  • 元素本身绑定事件的顺序处理机制。 分几种情况: 假设绑定事件元素本身是 A,委派元素 B.C。 第一种: A,B,C各自绑定事件,事件按照节点的冒泡层次触发 第二种: 元素 A 本身有事件,元素还需要委派元素 B.C 事件 委派的元素 B.C 肯定是该元素 A 内部的,所以先处理内部的委派,最后处理本身的事件 第三种: 元素本身有事件,元素还需要委派事件,内部委派的元素还有自己的事件,这个有点绕 先执行 B,C 自己本身的事件,然后处理 B,C 委派的事件,最后处理 A 事件 为什么需要了解这个处理的顺序呢? 因为jQuery做委托排序的时候要用到。
    查看全部
    0 采集 收起 来源:理解委托

    2015-09-12

  • 文档片段继承了Node的所有方法,通常用于执行那些针对文档的DOM操作。如果将文档中的节点添加到文档片段中,就会从文档树中再看到该节点。添加到文档片段中的新节点同样也不属于文档树。可以通过appendChild()或insertBefore()将文档片段中内容添加到文档中。在将文档片段作为参数传递给这两个方法时,实际上只会将文档片段的所有子节点添加到相应的位置上;文档片段本身永远不会称为文档树的一部分。 createElement是创建一个新的节点,createDocumentFragment是创建一个文档片段。 DocumentFragment 接口表示文档的一部分(或一段)。更确切地说,它表示一个或多个邻接的 Document 节点和它们的所有子孙节点。 DocumentFragment 节点不属于文档树,继承的 parentNode 属性总是 null。 不过它有一种特殊的行为(非常有用): 即当请求把一个 DocumentFragment 节点插入文档树时,插入的不是 DocumentFragment 自身,而是它的所有子孙节点。这使得 DocumentFragment 成了有用的占位符,暂时存放那些一次插入文档的节点。它还有利于实现文档的剪切、复制和粘贴操作,尤其是与 Range 接口一起使用时更是如此。 可以用 Document.createDocumentFragment() 方法创建新的空 DocumentFragment 节点。 也可以用 Range.extractContents() 方法 或 Range.cloneContents() 方法 获取包含现有文档的片段的 DocumentFragment 节点。 除此之外,createElement创建的元素可以使用innerHTML,createDocumentFragment创建的元素使用innerHTML并不能达到预期修改文档内容的效果,只是作为一个属性而已。两者的节点类型完全不同,并且createDocumentFragment创建的元素在文档中没有对应的标记,因此在页面上只能用js中访问到。 createElement创建的元素可以重复操作,添加之后就算从文档里面移除依旧归文档所有,可以继续操作,但是createDocumentFragment创建的元素是一次性的,添加之后再就不能操作了
    查看全部
  • 文档碎片 参考标准的描述,DocumentFragment是一个轻量级的文档对象,能够提取部分文档的树或创建一个新的文档片段,即有文档缓存的作用。 createDocumentFragment作用 多次使用节点方法(如:appendChild)绘制页面,每次都要刷新页面一次。效率大打折扣,而使用document_createDocumentFragment()创建一个文档碎片,把所有的新结点附加在其上,然后把文档碎片的内容一次性添加到document中,这也就只需要一次页面刷新就可以了。 DocumentFragment类型 在所有节点类型中,只有DocumentFragment在文档中没有对应的标记。DOM规定文档片段(documentfragment)是一种“轻量级”的文档,可以包含和控制节点,但不会像完整的文档那样占用额外资源。DocumentFragment节点具有下列特征: 1. nodeType的值为11 2. nodeName的值为“#document-fragment” 3. nodeValue的值为 null 4. parentNode的值为 null 5. 子节点可以是 Element、ProcessingInstruction、Comment、Text、CDATASection 或 EntityReference 虽然不能把文档片段直接添加到文档中,但可以将它作为一个“仓库”来使用,即可以在里面保存将来可能会添加到文档中的节点。要创建文档片段,可以使用 document.createDocumentFragment()方法,如下所示: var fragment = document.createDocumentFragment();
    查看全部
  • 元素父节点的获取方法ele.parentNode==ele["parentNode"]
    查看全部
  • 对封装的节点操作做了参数上的校正支持,与对应处理的调用:append、prepend、before、after、replaceWith、appendTo、prependTo、insertBefore、insertAfter、replaceAll。 为什么需要用这个domManip函数呢? 我们知道节点操作浏览器提供的接口无非就是那么几个: appendChild() 通过把一个节点增加到当前节点的childNodes[]组,给文档树增加节点: cloneNode() 复制当前节点,或者复制当前节点以及它的所有子孙节点: hasChildNodes() 如果当前节点拥有子节点,则将返回true: in重置代码sertBefore() 给文档树插入一个节点,位置在当前节点的指定子节点之前。如果该节点已经存在,则删除之再插入到它的位置: removeChild() 从文档树中删除并返回指定的子节点: replaceChild() 从文档树中删除并返回指定的子节点,用另一个节点替换它
    查看全部
    0 采集 收起 来源:节点操作

    2015-09-02

  • .parent()方法允许我们能够在DOM树中搜索到这些元素的父级元素,从有序的向上匹配元素,并根据匹配的元素创建一个新的 jQuery 对象。 .parents()和.parent()方法是相似的,但后者只是进行了一个单级的DOM树查找 .parentsUntil() 方法会找遍所有这些元素的前辈元素,直到遇到了跟参数匹配的元素才会停止。返回的jQuery对象中包含了所有找到的前辈元素,除了与 .parentsUntil() 选择器匹配的那个元素。
    查看全部
    0 采集 收起 来源:遍历祖先

    2015-09-02

  • textContent,元素的内容,仅文本 document.createTextNode("Water"),创建文本内容,节点
    查看全部
    0 采集 收起 来源:内部插入

    2018-03-22

  • nodeType 1 元素节点 2 属性节点 3 文本节点
    查看全部
    0 采集 收起 来源:遍历同胞(下)

    2015-08-30

  • 1-2 jQuery的遍历结构设计 这节很经典,值得回顾
    查看全部
  • 查找对象与查找某个文件或目录的思想方法相似
    查看全部
    0 采集 收起 来源:什么是遍历?

    2015-08-25

  • 偏移量 元素的可见大小由宽度高度决定,其中还要包括内边距、滚动条、边宽大小(不包括外边距),通过下面四个属性可以获得。 offsetWidth、offsetHeigh、offsetLeft、offsetTop offsetHeight/offsetWidth: 表述元素的外尺寸: 元素内容 + 内边距 + 边框(不包括外边距),给出元素在页面中占据的宽度和高度的总计。 注意:把元素的边框和滚动条计算在内。 offsetWidth = border-left-width + padding-left + width + padding-right + border-right-width; offsetHeight = border-top-width + padding-top + height + padding-bottom + border-bottom-width; 包含关系: offsetLeft/offsetTop: 表示该元素的左上角(边框外边缘)与已定位的父容器(offsetParent对象)左上角的距离。 offsetParent元素是指元素最近的定位(relative,absolute)祖先元素,可递归上溯。 客户区域大小 clientWidth、clientHeight clientWidth/clientHeight: 用于描述元素的内尺寸:元素内容 + 两边内边距。 clientWidth = width+padding(left、right) clientHeight = height+padding(top、bottom) 滚动大小 scrollWidth、scrollHeight、scrollLeft、scrollTop scrollHeight/scrollWidth: 元素内容的总高度或宽度 scrollLeft/scrollTop:是指元素滚动条位置,它们是可写的(被隐藏的内容区域左侧/上方的像素) scrollHeight:是元素的padding加元素内容的高度。这个高度与滚动条无关,是内容的实际高度。 计算方式 :scrollHeight = topPadding + bottomPadding + 内容margix box的高度。
    查看全部
    0 采集 收起 来源:元素大小

    2015-08-16

  • .html()用为读取和修改元素的HTML标签 .text()用来读取或修改元素的纯文本内容 .val()用来读取或修改表单元素的value
    查看全部
    0 采集 收起 来源:插入

    2015-08-16

  • html()方法插入的是一段字符串 ,所以代码不会执行,append()插入的是DOM元素与内容,所以代码会执行
    查看全部
    0 采集 收起 来源:深入domManip(下)

    2015-08-16

  • 1:函数调用了domManip函数,传进去的参数第一个是arguments,这个大家都知道arguments是函数参数对象,是一个类数组对象。这里arguments可能是包含dom元素的数组,或者html字符串 2:第二参数是一个回调函数,target.appendChild(elem);看到这个代码就很明了,在回调函数中分离各自的处理方法,通过domManip抽象出公共的处理,其余的prepend 、before 、after等接口也是类似的处理
    查看全部
    0 采集 收起 来源:深入domManip(上)

    2015-08-16

举报

0/150
提交
取消
课程须知
源码的阅读不是一蹴而就的,需要大家有一定的功底,比如jQuery的基础运用以及API的熟悉度,除此之外要有牢固的javascript、DOM、CSS的基础功底,甚至还需要理解常见的设计模式、数据结构等等。当然大家也不要被这些给吓住了,理解,总是需要一种慢慢的学习过程。
老师告诉你能学到什么?
通过本课程的学习,您可以由浅入深地剖析jQuery库的设计与实现。 其中我们围绕的重心: 1、设计理念 2、结构组织 3、接口设计 4、模式运用 5、场景套用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!