一.创建节点
1 |
var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div>"; |
2 |
$('body').append(box); //将节点插入到<body>元素内部 |
二.插入节点
jQuery 提供了好几种个方法来插入节点:
1、内部插入节点方法
| 方法名 |
描述 |
| append(content) |
向指定元素内部后面插入节点 content |
| append(function (index, html) {}) |
使用匿名函数向指定元素内部后面插入节点 |
| appendTo(content) |
将指定元素移入到指定元素 content 内部后面 |
| prepend(content) |
向指定元素 content 内部的前面插入节点 |
| prepend(function (index, html) {}) |
使用匿名函数向指定元素内部的前面插入节点 |
| prependTo(content) |
将指定元素移入到指定元素 content 内部前面 |
代码示例:
01 |
$('div').append('<strong>节点</strong>'); //向 div 内部插入 strong 节点 |
02 |
$('div').append(function (index, html) { //使用匿名函数插入节点,index为该div的索引,即第几个div,html是原节点内部内容。 |
03 |
return '<strong>节点</strong>+index+html'; |
05 |
$('span').appendTo('div'); //讲 span 节点移入 div 节点内 |
06 |
$('span').appendTo($('div')); //同上 |
07 |
$('div').prepend('<span>节点</span>'); //将 span 插入到 div 内部的前面 |
08 |
$('div').append(function (index, html) { //使用匿名函数,同上 |
09 |
return '<span>节点</span>'; |
11 |
$('span').prependTo('div'); //将 span 移入 div 内部的前面 |
12 |
$('span').prependTo($('div')); //同上 |
2、外部插入节点方法
| 方法名 |
描述 |
| after(content) |
向指定元素的外部后面插入节点 content |
| after(function (index, html) {}) |
使用匿名函数向指定元素的外部后面插入节点 |
| before(content) |
向指定元素的外部前面插入节点 content |
| before(function (index, html) {}) |
使用匿名函数向指定元素的外部前面插入节点 |
| insertAfter(content) |
将指定节点移到指定元素 content 外部的后面 |
| insertBefore(content) |
将指定节点移到指定元素 content 外部的前面 |
代码示例:
01 |
$('div').after('<span>节点</span>'); //向 div 的同级节点后面插入 span |
02 |
$('div').after(function (index, html) { //使用匿名函数,同上 |
03 |
return '<span>节点</span>'; |
05 |
$('div').before('<span>节点</span>'); //向 div 的同级节点前面插入 span |
06 |
$('div').before(function (index, html) { //使用匿名函数,同上 |
07 |
return '<span>节点</span>'; |
09 |
$('span').insertAfter('div'); //将 span 元素移到 div 元素外部的后面 |
10 |
$('span').insertBefore('div'); //将 span 元素移到 div 元素外部的前面 |
三.包裹节点
jQuery 包裹节点就是使用字符串代码将指定元素的代码包含着的意思。
| 方法名 |
描述 |
| wrap(html) |
向指定元素包裹一层 html 代码 |
| wrap(element) |
向指定元素包裹一层 DOM 对象节点 |
| wrap(function (index) {}) |
使用匿名函数向指定元素包裹一层自定义内容 |
| unwrap() |
移除一层指定元素包裹的内容 |
| wrapAll(html) |
用 html 将所有元素包裹到一起 |
| wrapAll(element) |
用 DOM 对象将所有元素包裹在一起 |
| wrapInner(html) |
向指定元素的子内容包裹一层 html |
| wrapInner(element) |
向指定元素的子内容包裹一层 DOM 对象节点 |
| wrapInner(function (index) {}) |
用匿名函数向指定元素的子内容包裹一层 |
代码示例:
01 |
$('div').wrap('<strong></strong>'); //在 div 外层包裹一层 strong |
02 |
$('div').wrap('<strong>123</strong>'); //包裹的元素可以带内容 |
03 |
$('div').wrap('<strong><em></em></strong>'); //包裹多个元素 |
04 |
$('div').wrap($('strong').get(0)); //也可以包裹一个原生 DOM |
05 |
$('div').wrap(document.createElement('strong')); //临时的原生 DOM |
06 |
$('div').wrap(function (index) { //匿名函数 |
07 |
return '<strong></strong>'; |
09 |
$('div').unwrap(); //移除一层包裹内容,多个需移除多次 |
10 |
$('div').wrapAll('<strong></strong>'); //所有 div 外面只包一层 strong |
11 |
$('div').wrapAll($('strong').get(0)); //同上 |
12 |
$('div').wrapInner('<strong></strong>'); //包裹子元素内容 |
13 |
$('div').wrapInner($('strong').get(0)); //DOM 节点 |
14 |
$('div').wrapInner(function () { //匿名函数 |
15 |
return '<strong></strong>'; |
注意:.wrap()和.wrapAll()的区别在前者把每个元素当成一个独立体,分别包含一层外层;后者将所有元素作为一个整体作为一个独立体,只包含一层外层。这两种都是在外层包含,而.wrapInner()在内层包含。
四.节点操作
除了创建、插入和包裹节点,jQuery 还提供了一些常规的节点操作方法:复制、替换和删除节点。
2 |
$('body').append($('div').clone(true)); //复制一个节点添加到 HTML 中 |
注意:clone(true)参数可以为空,表示只复制元素和内容,不复制事件行为。而加上 true参数的话,这个元素附带的事件处理行为也复制出来。
2 |
$('div').remove(); //直接删除 div 元素 |
注意:.remove()不带参数时,删除前面对象选择器指定的元素。而.remove()本事也可以带选择符参数的,比如:$('div').remove('#box');只删除 id=box 的 div。
2 |
$('div').detach(); //保留事件行为的删除 |
注意:.remove()和.detach()都是删除节点,而删除后本身方法可以返回当前被删除的节点对象,但区别在于前者在恢复时不保留事件行为,后者则保留。
2 |
$('div').empty(); //删除掉节点里的内容 |
4 |
$('div').replaceWith('<span>节点</span>'); //将 div 替换成 span 元素 |
5 |
$('<span>节点</span>').replaceAll('div'); //同上 |
- redis 集群新增节点,slots槽分配,删除节点, [ERR] Calling MIGRATE ERR Syntax error, try CLIENT (LIST | KILL | GET...
redis reshard 重新分槽(slots) https://github.com/antirez/redis/issues/5029 redis 官方已确认该bug redis 集群重新(re ...
- JQuery(选择器、事件、DOM操作)
一.jQuery简介 jQuery 是一个 JavaScript 库. jQuery 极大地简化了 JavaScript 编程. jQuery 库位于一个 JavaScript 文件中,其中包含了所有 ...
- 读<jquery 权威指南>[1]-选择器及DOM操作
今天是小年了,2013马上要过去了,但是学习不能间断啊.最近正在看<jQuery权威指南>,先温习一下选择器和DOM操作. 一.基本选择器 1.table单双行: $(function ( ...
- 事件冒泡及事件委托的理解(JQuery Dom操作)
jQuery事件冒泡: click mouseenter 等事件没有绑定 也会触发,只是触发后没有任何结果 子元素触发事件后,会把触发事件传递给父元素,那么父元素也会被触发. 不管有没有绑定事件,都会 ...
- jQuery学习笔记(DOM操作)
DOM操作的分类 一般来说,DOM操作分为3个方面,即DOM Core.HTML-DOM和CSS-DOM. 1. DOM Core DOM Core并不专属于JavaScript,任何一种支持DOM的 ...
- 《锋利的JQuery》读书要点笔记2——DOM操作
第三章 jQuery中的DOM操作 3.1 DOM(Document Object Model)操作的分类 1. DOM Core 例如:document.getElementsByTagNam ...
- jQuery中的DOM操作(三)
一.查找节点 [返回jQuery对象]$(选择器字符串); 使用jQuery函数,里面参数为选择器字符串,查询符合条件的BOM对象并返回jQuery对象eg: $('div.one spa ...
- jQuery进行DOM操作记录
1.在元素内部插入DOM元素 ①插入到元素内部原有元素之后 append(content) 返回值:jQuery 参数-content:要插入的元素String,Element,jQuer ...
- 用OC实现双向链表:构造链表、插入节点、删除节点、遍历节点
一.介绍 双向链表:每一个节点前后指针域都和它的上一个节点互相指向,尾节点的next指向空,首节点的pre指向空. 二.使用 注:跟单链表差不多,简单写常用的.循环链表无法形象化打印,后面也暂不实现了 ...
- mongodb replica set 添加/删除节点方法--http://www.ii123.com/jc/bc/bczh/258948.html
replica set多服务器主从,添加,删除节点,肯定会经常遇到的.下面详细说明一下,添加,删除节点的2种方法. 一,利用rs.reconfig,来添加,删除节点 1,添加节点 代码如下 re ...
随机推荐
- 数据结构 --- 线性表学习(php模拟)
线性表:零个或多个数据元素的有限序列(注:以下都是用的整型数据模拟) 一 顺序存储结构(用一段地址连续的存储单元一次存储线性表的数据元素) 1.1 三个属性:存储空间的起始位置:最大存储容量:当前长度 ...
- linux c数据库备份第五版
linux下c实现的数据库备份程序终于迎来第五版啦,这样改程序就暂告一段落啦,有点小激动呢...接下来的一周(可能两周)时间里,我会用一个小型的网络游戏(比拼99乘法)作为我学习linux c的毕业之 ...
- Permission denied (publickey).
问题: ssh-keygen -t rsa -C "youremail@example.com" 若是接连按三次回车,会在-/.ssh下生成 id_rsa, id_rsa.pub ...
- 转:hadoop知识整理
文章来自于:http://tianhailong.com/hadoop%E7%9F%A5%E8%AF%86%E6%95%B4%E7%90%86.html 按照what.how.why整理了下文章,帮助 ...
- ES Head is not working with elasticsearch-1.4.0.Beta1
ES Head is not working with elasticsearch-1.4.0.Beta1: https://github.com/elastic/elasticsearch/issu ...
- windows 下,用CreateWaitableTimer SetWaitableTimer 创建定时器(用轮询的办法保持高精度)
windows 下,用CreateWaitableTimer SetWaitableTimer 创建定时器可以有 100 纳秒也就是 1/10 微秒, 1/10000 毫秒的精度. 呵呵. SetWa ...
- ASP.NET MVC 5使用CrystalReport(水晶报表)
原文:ASP.NET MVC 5使用CrystalReport(水晶报表) http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS ...
- Hbase与RDBMS
hbase与传统关系数据库区别 hbase适合于非结构化数据存储的数据库.介于Map Entry 和 DB row之间的一种数据存储方式. 1. 数据类型: HBase只有简单的字符串类型,它只保存字 ...
- 【索引】gtest学习笔记
下载gtest 链接:http://www.cnblogs.com/duxiuxing/p/4270804.html gtest官方文档浅析 链接:http://www.cnblogs.com/dux ...
- Js菜鸟学习
(一) 1 代码如下: //页面中写入html内容 document.write("<h1>Hello World!</h1>") 2 代码如下: //为了 ...