在 js 中也有DOM操作,也可以进行 增删改查 ,但是通过 js 的DOM操作会发现,我的天哪,代码好多.但是 jQuery的文档操作就少了很多.

js 中 DOM 的示例 :

var box = document.getElementsByTagName("ul")[0];
var active = document.createElement("li");
active.linnerHTML = "战神";
box.appendChlid(active);

一 . 插入操作

父子之间

 1 . append()

语法 :

父元素.append(子元素);

解释 : 追加某元素,在父元素中添加新的子元素,子元素可以是 ; string(字符串)    ,  element(js对象)  , jQuery元素 .

示例 :

var oli = document.createElement("li");   // var oli = document.getElementById("li")
oil.innerHTML = "哈哈哈";
$("ul").append("<li>132</li>");
$('ul').append(oli);
$('ul').append($('#app'));

注意 : 如果追加的是 jQuery 对象(或者js的DOM对象),那么这些元素将从原位置上消失,其实就是一个移动操作.

    2 . appendTo()

语法 :

子元素.appendTo(父元素);

  解释 : 追加到某元素 , 子元素添加到父元素.

$('<li>馒头.嗷嗷嗷</li>').appendTo($('ul')).addClass('active')

  注意 : 要添加的元素可以是 string   element(js对象)    jQuery对象.

3 . prepend()

语法 :

父元素.prepend(子元素);

  解释 : 前置添加,添加到父元素的第一个位置.

$('ul').prepend('<li>我最好看</li>');

4 . prependTo()  

  语法 :

子元素.prependTo(父元素);

   解释 : 前置添加,添加到父元素的第一个位置

$('<a href="www.baidu.com">百度一下</a>').prependTo('ul');

当元素中有 类名 / ID / 地址 ...时,用双引 " " 那么$() 中就要用 单引 ' '    - 别误会,我怕自己忘.

兄弟之间

1 . after()

语法 :

兄弟元素.after(要插入的兄弟元素);
要插入的兄弟元素.inserAfter(兄弟元素);

   解释 : 在匹配的元素之后插入元素.

$('ul').after('<h4>我是火娃</h4>')
$('<h5>我是水娃</h5>').insertAfter('ul')

2 . before() 

语法 :

兄弟元素.before(要插入的兄弟元素);
要插入的兄弟元素.inserBefore(兄弟元素);

    解释 : 在匹配元素之后插入内容.

$('ul').before('<h3>我是大娃</h3>')
$('<h2>我是二娃</h2>').insertBefore('ul')

二 . 克隆操作

语法 :

$(选择器).clone();

    解释 : 克隆匹配的DOM元素

$('button').click(function() {

  // 1.clone():克隆匹配的DOM元素
// 2.clone(true):元素以及其所有的事件处理并且选中这些克隆的副本(简言之,副本具有与真身一样的事件处理能力)
$(this).clone(true).insertAfter(this);
})

三 . 修改操作

1 . replaceWitch()

     语法 :

$(selector).replaceWith(content);

     解释 : 将所有匹配的元素替换成指定 string , js对象 , jQuery对象.

//将所有的h5标题替换为a标签
$('h5').replaceWith('<a href="#">hello world</a>')
//将所有h5标题标签替换成id为app的dom元素
$('h5').replaceWith($('#app'));

 2 . replaceAll()

    语法 :

$('<p>哈哈哈</p>')replaceAll('h2');

     解释 :  替换所有.将所有的某个标签替换成另一个标签.(将所有的 h2 标签替换成 p 标签)

$('<br/><hr/><button>按钮</button>').replaceAll('h4')

四 . 删除操作

     1 . remove() 

    语法 :

$(selector).remove(); 

    解释 : 删除节点后,事件也会删除(就是说,删除整个标签)

$('ul').remove();

   2 . detach()

    语法 :

$(selector).detach(); 

    解释 : 删除节点后,事件会保留

 var $btn = $('button').detach()
//此时按钮能追加到ul中
$('ul').append($btn)

      3 . empty()

    语法 :

$(selector).empty(); 

    解释 : 清空选择元素中所有后代节点

//清空掉ul中的子元素,保留ul
$('ul').empty()

   

jQuery 的文档操作的更多相关文章

  1. python 全栈开发,Day54(jQuery的属性操作,使用jQuery操作input的value值,jQuery的文档操作)

    昨日内容回顾 jQuery 宗旨:write less do more 就是js的库,它是javascript的基础上封装的一个框架 在前端中,一个js文件就是一个模块 一.用法: 1.引入包 2.入 ...

  2. python全栈开发day48-jqurey自定义动画,jQuery属性操作,jQuery的文档操作,jQuery中的ajax

    一.昨日内容回顾 1.jQuery初识 1).使用jQuery而非JS的六大理由 2).jQuery对象和js对象转换 3).jQuery的两大特点 4).jQuery的入口函数三大写法 5).jQu ...

  3. (20)jQuery的文档操作(创建,添加、设置样式和删除等)

    <!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>jq ...

  4. 前端jQuery之文档操作

    1.文档操作内部插入 A.append(B) 吧B添加到A的后面 A.appendTo(B) 吧A添加到B的后面 A.prepend(B) 吧B添加到A的前面 A.prependTo(B) 吧A添加到 ...

  5. jQuery的文档操作

    1.插入操作 一.父元素.append(子元素) 追加某元素 父元素中添加新的元素 var oli = document.createElement('li'); oli.innerHTML = '哈 ...

  6. jquery之文档操作

    append(content|fn) 向每个匹配的元素内部添加内容(元素内部) appendTo(content) 把所有匹配的元素追加到另一个指定的元素中(元素内部) prepend(content ...

  7. jQuery系列(六):jQuery的文档操作

    1.插入操作 (1) 语法: 父元素.append(子元素) 解释:追加某元素,在父元素中添加新的子元素.子元素可以为:stirng | element(js对象) | jquery元素 let ol ...

  8. 【JQuery】文档操作

    一.前言 接着上一章的内容,接着JQuery的学习 二.内容 addClass 向被选元素添加一个或多个类 $(selector).addClass(class) $(selector).addCla ...

  9. jQuery二——属性操作、文档操作、位置属性

    一.jquery的属性操作 jquery对象有它自己的属性和方法. 其中jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作. 1.html属性操作 是对htm ...

随机推荐

  1. Rebound动画框架简单介绍

    Rebound动画框架简单介绍 Android菜鸟一枚,有不对的地方希望大家指出,谢谢. 最近在接手了一个老项目,发现里面动画框架用的是facebook中的Rebound框架,由于以前没听说过,放假时 ...

  2. 【音乐App】—— Vue-music 项目学习笔记:歌手详情页开发

    前言:以下内容均为学习慕课网高级实战课程的实践爬坑笔记. 项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star. 歌曲列表 歌曲播放 一.子 ...

  3. 如何把VBS转换为EXE文件

    如下所示,我想要做一个把360网速测试剥离开来的绿色版,有一个TestSpeed.bat命令,双击之后去执行了360AppLoader.exe,并且会调用netmon文件夹的NetSpeed.dll文 ...

  4. 想提升java知识的同学请进

    这是我最近在整理的笔记,大家可以看看. https://www.gitbook.com/book/jackal007/java_more/ 如果觉得有问题可以提出,随时修改. 这个笔记是我花了好多时间 ...

  5. Linux装mysqli.so

    php 5.2.3+mysqli 安装与常见错误 总结 php 5.2.3+mysqli 安装与常见错误 总结   记得原来在编译php的已经已经加上参数--with-mysql=/usr/local ...

  6. 七款Debug工具推荐:iOS开发必备的调试利器

    历时数周或数月开发出来了应用或游戏.可为什么体验不流畅?怎么能查出当中的纰漏?这些须要调试诊断工具从旁协助.调试是开发过程中不可缺少的重要一环.本文会列举几个比較有效的调试诊断工具,能够帮助你寻根究底 ...

  7. Linux安装indicator-china-weather

    https://launchpad.net/indicator-china-weather sudo apt-get update sudo apt-get install python-appind ...

  8. Sahi ---实现 Web 自动化测试

    参考网址:http://sahipro.com/docs/sahi-apis/index.html Sahi 是 Tyto Software 旗下的一个基于业务的开源 Web 应用自动化测试工具.Sa ...

  9. Redis(六):java里常用的redis客户端(Jedis和Redisson)

    Redis的各种语言客户端列表,请参见Redis Client.其中Java客户端在github上start最高的是Jedis和Redisson.Jedis提供了完整Redis命令,而Redisson ...

  10. u-boot 学习系列 1 - SPL

    u-boot这个东西从自我N年前使用到现在,变化好多,今天开始重新研究下,本系列的研究都是基于BeagleBoneBlack(bbb)开发板和 u-boot v201801版本的. SPL介绍 在源代 ...