为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
jQuery基础(二)—DOM篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery基础(二)—DOM篇

Aaron艾伦 Web前端工程师
难度入门
时长 2小时17分
  • 注意事项:在使用的时候需要特别注意下

    粗看.parents()和.closest()是有点相似的,都是往上遍历祖辈元素,但是两者还是有区别的,否则就没有存在的意义了

    1. 起始位置不同:.closest开始于当前元素 .parents开始于父元素

    2. 遍历的目标不同:.closest要找到指定的目标,.parents遍历到文档根元素,closest向上查找,直到找到一个匹配的就停止查找,parents一直查找到根元素,并将匹配的元素加入集合

    3. 结果不同:.closest返回的是包含零个或一个元素的jquery对象,parents返回的是包含零个或一个或多个元素的jquery对象


    查看全部
  • .wrap 每个人加个爸爸
    之前的:
    .append 最后面加个兄弟 (结合appendTo()来记)
    .prepend 最前面加个兄弟(prependTo()来记)
    .before 我的前面加个兄弟(结合insertBefore来记)
    .after我的后面加个兄弟(结合insertAfter()来记)
    .detach() 隐身
    .remove 自杀
    .empty 身体被掏空
    .clone 复制 (true全复制 false 浅复制,无事件)
    .replaceWith 删除并替换节点(结合.replaceAll()来记)

    查看全部
  • remove会删除匹配元素的所有内容包括本身(包括绑定的事件,使用的数据等)

    查看全部
  • DOM节点删除之保留数据的删除操作detach()

    如果我们希望临时删除页面上的节点,但是又不希望节点上的数据与事件丢失,并且能在下一个时间段让这个删除的节点显示到页面,这时候就可以使用detach方法来处理

    detach从字面上就很容易理解。让一个web元素托管。即从当前页面中移除该元素,但保留这个元素的内存模型对象。

    来看看jquery官方文档的解释:

    这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。与remove()不同的是,所有绑定的事件、附加的数据等都会保留下来。 $("div").detach()这一句会移除对象,仅仅是显示效果没有了。但是内存中还是存在的。当你append之后,又重新回到了文档流中。就又显示出来了。

    当然这里要特别注意,detach方法是JQuery特有的,所以它只能处理通过JQuery的方法绑定的事件或者数据

    参考右边的代码区域,通过 $("p").detach()把所有的P元素删除后,再通过append把删除的p元素放到页面上,通过点击文字,可以证明事件没有丢失


    查看全部
  • .children() 找儿子
    之前的:
    .detach() 隐身
    .remove 自杀
    .empty 身体被掏空
    .clone 复制 (true全复制 false 浅复制,无事件)
    .replaceWith 删除并替换节点(结合.replaceAll()来记)
    .wrap 每个人加个爸爸
    .unwrap 爸爸没了
    .wrapAll 所有人加个爸爸
    .wrapAll(function)每个人加个爸爸
    .wrapInner 加个儿子

    查看全部
  • 为什么要去重?
    因为如果不去重,当你点击btn1后,再点一次btn1,它会把空内容赋给p,然后再点击btn2是没有内容出现。

    查看全部
  • $("p").remove(":contains('3')")
    $("p").filter(":contains('3')").remove();
    $("p:contains('3')").remove();
    这三种方式结果是一样的,不过处理方式不一样

    查看全部
  • 这里要注意,.wrapAll(function(){return ""}),通过此方式进行的处理等 同于wrap()方法,是对匹配的每个元素都单独包裹。

    wrapAll是对匹配的所有元素作为一个整体 进行最外层的包裹。

    查看全部
  • querySelector() 方法返回匹配指定 CSS 选择器元素的第一个子元素 。

    注意: querySelector() 方法只返回匹配指定选择器的第一个元素。如果你要返回所有匹配元素,请使用querySelectorAll() 方法替代。

    语法

    element.querySelector(CSS 选择器)

    参数值

    参数

    类型

    描述

    CSS 选择器

    String

    必须。指定一个或多个匹配元素的 CSS 选择器。 可以使用它们的 id, , 类型, 属性, 属性值等来选取元素。

    对于多个选择器,使用逗号隔开,返回一个匹配的元素。

    提示: 更多 CSS 选择器,请参阅我们的 CSS 选择器参考手册

     

    document.addEventListener() 方法用于向文档添加事件句柄。

    提示: 可以使用 document.removeEventListener() 方法来移除 addEventListener() 方法添加的事件句柄。

    提示:使用 element.addEventListener() 方法为指定元素添加事件句柄。

    参数值

    参数

    描述

    event

    必需。描述事件名称的字符串。

    注意: 不要使用 "on" 前缀。例如,使用 "click" 来取代 "onclick"

    提示: 所有 HTML DOM 事件,可以查看我们完整的 HTML DOM Event 对象参考手册

    function

    必需。描述了事件触发后执行的函数。 

    当事件触发时,事件对象会作为第一个参数传入函数。事件对象的类型取决于特定的事件。例如, "click" 事件属于 MouseEvent(鼠标事件) 对象。

    useCapture

    可选。布尔值,指定事件是否在捕获或冒泡阶段执行。

    可能值:

    · true - 事件句柄在捕获阶段执行

    · false- 默认。事件句柄在冒泡阶段执行


    查看全部
  • https://img1.sycdn.imooc.com//5acdce0800015f7d07900169.jpg

    查看全部
  • https://img1.sycdn.imooc.com//5acdcdef0001895403440155.jpg

    查看全部
  • .replaceAll()和.replaceWith()功能类似,主要是目标和源的位置区别 .replaceWith()与.replaceAll() 方法会删除与节点相关联的所有数据和事件处理程序 .replaceWith()方法,和大部分其他jQuery方法一样,返回jQuery对象,所以可以和其他方法链接使用 返回的jQuery对象引用的是被删除的节点,而不是通过replaceWith/replaceAll方法替换的节点

    查看全部
  • clone浅拷贝 只克隆节点 不克隆事件 clone()

    clone深拷贝,可以继续触发事件 克隆节点 克隆事件 clone(true)


    查看全部
    0 采集 收起 来源:DOM拷贝clone()

    2018-04-10

  • remove移除节点

    • 无参数,移除自身整个节点以及该节点的内部的所有节点,包括节点上事件与数据

    • 有参数,移除筛选出的节点以及该节点的内部的所有节点,包括节点上事件与数据

    detach移除节点

    • 移除的处理与remove一致

    • 与remove()不同的是,所有绑定的事件、附加的数据等都会保留下来

    • 例如:$("p").detach()这一句会移除对象,仅仅是显示效果没有了。但是内存中还是存在的。当你append之后,又重新回到了文档流中。就又显示出来了。

    查看全部
  • empty方法与remove方法的比较

    empty方法

    • 严格地讲,empty()方法并不是删除节点,而是清空节点,它能清空元素中的所有后代节点

    • empty不能删除自己本身这个节点

    remove方法

    • 该节点与该节点所包含的所有后代节点将同时被删除

    • 提供传递一个筛选的表达式,删除指定合集中的元素

    查看全部

举报

0/150
提交
取消
课程须知
1、有HTML/CSS基础 2、有JavaScript基础
老师告诉你能学到什么?
1、jQuery的语法 2、jQuery节点操作
友情提示:

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