jQuery 节点操作(创建 插入 删除 复制 替换 包裹)
一,创建元素节点:
第1个步骤可以使用jQuery的工厂函数$()来完成,格式如下:
$(html);
$(html)方法会根据传入的HTML标记字符串,创建一个DOM对象,并将这个DOM对象包装成一个jQuery对象后返回。
var $li_1 = $("<li></li>"); // 创建第一个<li>元素
var $li_2 = $("<li></li>"); // 创建第二个<li>元素
二,插入元素节点:
1.append()
//<p>我是一个p标签</p>
//append()向每个匹配的元素内部追加内容
$('p').append('<p>您好!</p>');
//结果;<p>我是一个p标签<p>您好!</p></p> $('<p>您好!</p>').appendTo('p');
//结果;<p>我是一个p标签<p>您好!</p></p>
2.prepend()
//<p>我是一个p标签</p>
//prepend()向每个匹配的元素内部的前面 追加内容
$('p').prepend('<p>您好!</p>');
//结果;<p><p>您好!</p>我是一个p标签</p> $('<p>您好!</p>').prependTo('p');
//结果;<p><p>您好!</p>我是一个p标签</p>
3.after()
//<p>我是一个p标签</p>
//after()向每个匹配的元素之后添加内容
$('p').after('<p>您好!</p>');
//结果;<p>我是一个p标签</p><p>您好!</p> $('<p>您好!</p>').insertAfter('p');
//结果;<p>我是一个p标签</p><p>您好!</p>
4.before()
//<p>我是一个p标签</p>
//before()向每个匹配的元素之前添加内容
$('p').before('<p>您好!</p>');
//结果;<p>您好!</p><p>我是一个p标签</p> $('<p>您好!</p>').insertBefore('p');
//结果;<p>您好!</p><p>我是一个p标签</p>
三,删除元素节点:
<p title="选择你最喜欢的水果?">你最喜欢的水果是?</p>
<ul>
<li title="苹果">苹果</li>
<li title="橘子">橘子</li>
<li title="菠萝">菠萝</li>
</ul>
//1、 remove() 方法
//当某个节点用remove() 方法删除后, 该节点所包含的所有后代节点将同时被删除。
//这个方法的返回值是一个指向已被删除的节点的引用, 因此可以在以后再使用这些元素。
//该节点所有绑定的事件、 附加的数据都会被删除
var $li = $("ul li:eq(0)").remove();//
$li.appendTo("ul"); //2、 detach() 方法
//detach () 和remove() 一样, 也是从DOM中去掉所有匹配的元素。
//但需要注意的是, 这个方法不会把匹配的元素从jQuery对象中删除, 因而可以在将来再使用这些匹配的元素。
//与remove() 不同的是, 所有绑定的事件、 附加的数据都会保留下来。
var $li = $("ul li:eq(0)").detach();
$li.appendTo("ul"); //3、 empty() 方法
//严格地讲, empty() 方法并不是删除节点, 而是清空节点, 它能清空元素中的所有后代节点。
var $li = $("ul li:eq(0)").empty();
$li.appendTo("ul");
四,复制元素节点:
<p title="选择你最喜欢的水果?">你最喜欢的水果是?</p>
<ul>
<li title="苹果">苹果</li>
<li title="橘子">橘子</li>
<li title="菠萝">菠萝</li>
</ul>
$("ul li:eq(0)").click(function () {
console.log(this);
$(this).clone().appendTo('ul');//复制当前单击的节点,并将它追加到ul元素中
})
五,替换元素节点:
<body>
<p title="选择你最喜欢的水果?">你最喜欢的水果是?</p>
<ul>
<li title="苹果">苹果</li>
<li title="橘子">橘子</li>
<li title="菠萝">菠萝</li>
</ul>
<script src="jquery-1.12.4.js"></script>
<script>
$(function () {
$('p').click(function () {
$('p').replaceWith('<span>你最不喜欢的水果是?</span>') //span元素替换p元素
$("<span>你最不喜欢的水果是?</span>").replaceAll('p') //span元素替换p元素
})
});
</script>
</body>
六,包裹元素节点:
<body>
<p title="选择你最喜欢的水果?">你最喜欢的水果是?</p>
<ul>
<li title="苹果">苹果</li>
<li title="橘子">橘子</li>
<li title="菠萝">菠萝</li>
</ul>
<script src="jquery-1.12.4.js"></script>
<script>
$(function () {
$('p').click(function () {
$('p').wrap('<span></span>');//用<span>标签是包裹住p标签
//<span><p title="选择你最喜欢的水果?">你最喜欢的水果是?</p></span>
})
});
</script>
</body>
jQuery 节点操作(创建 插入 删除 复制 替换 包裹)的更多相关文章
- 深入学习jQuery节点操作
× 目录 [1]创建节点 [2]插入节点 [3]删除节点[4]复制节点[5]替换节点[6]包裹节点 前面的话 DOM节点操作包括创建节点.插入节点.移除节点.替换节点和复制节点.jQuery也有类似的 ...
- ORACLE 11gR2 RAC添加删除(正常及强制)节点操作步骤(删除篇)
ORACLE 11gR2 RAC添加删除(正常及强制)节点操作步骤(删除篇) 本文主要转载 [ http://www.cnxdug.org/?p=2511 ] 有部分细节自己实验添加,再此谢谢前辈. ...
- jQuery节点操作,jQuery插入节点,jQuery删除节点,jQuery Dom操作
一.创建节点 1 var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div& ...
- 节点操作-创建并添加&删除节点&替换&克隆节点
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...
- 第四章 jQuery节点操作
1.DOM操作分为三类:(1)DOM Core:任何一种支持DOM的编程语言都可以使用用它如:getElementById()(2)HTML-DOM:用于处理HTML文档,如document,form ...
- 51 jquery 节点操作和 bootstrapt
jquery 和 bootstrapt1.jquery each 函数 1.each 循环方式一: 可循环对象: var arr =["alex","deng" ...
- JQuery --- 第五期 (JQuery节点操作)
学习笔记 1.JQuery添加节点相关方法 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- jQuery——节点操作
创建节点 1.$():创建一个li标签 $("<li class='aaa'>我是li标签</li>") 2.html():创建一个li标签并同时添加到ul ...
- MySQL进阶11--DDL数据库定义语言--库创建/修改/删除--表的创建/修改/删除/复制
/*进阶 11 DDL 数据库定义语言 库和表的管理 一:库的管理:创建/修改/删除 二:表的管理:创建/修改/删除 创建: CREATE DATABASE [IF NOT EXISTS] 库名; 修 ...
随机推荐
- 怎么给php下拉框默认选中
比如说一个个人信息的编辑界面,从php界面传来了性别的值是0, 而html上有0 1 两个option 怎么能把0的那个option加上属性selected 用的是模板, 不要用原生的嵌在html中的 ...
- Linux enca命令
一.简介 enca是Linux下的文件编码转换工具. 二.安装 http://dl.cihar.com/enca/ http://www.2cto.com/os/201404/295528.htm ...
- 一些使用的linux库
1.curl网络库 apt-get install libcurl4-openssl-dev sudo apt-get install curl 2.jsoncpp库 sudo apt-get ins ...
- 关于流程图设计,你需要Get的几点必备知识
流程图(Flow Chart)这个概念对很多人来说并不陌生,但如果让你定义或者举例说明什么是产品流程图,恐怕还是有难度的.或许诸如“用户体验”.“交互设计”.“逻辑关系”等词会像走马灯般闪现在你的脑海 ...
- 视觉SLAM的数学基础 第一篇 3D空间的位置表示
视觉SLAM中的数学基础 第一篇 3D空间的位置表示 前言 转眼间一个学期又将过去,距离我上次写<一起做RGBD SLAM>已经半年之久.<一起做>系列反响很不错,主要由于它为 ...
- unittest单元测试框架之coverage代码覆盖率统计
什么是coveage? coverage是一个检测单元测试覆盖率的工具,即检查你的测试用例是否覆盖到了所有的代码.当你通过pip install coverage成功安装完coverage后,就会在p ...
- Windows下安装Redis及php的redis拓展教程
一.安装前必读 Windows 64位操作系统 Redis 安装包(版本3.0.5,截止2017-05-29最新redis版本为3.2.9) 注意事项: 1.在window下如果你还需安装php的re ...
- HAService 刨坑
High availability is a characteristic of a system, which describes the duration (length of time) for ...
- 20169202 2016-2017-2《Windows攻击》
Windows攻击 实验要求:使用Metaspoit攻击MS08-067,提交正确得到远程Shell的截图,加上自己的学号水印 (1):MS08-067远程溢出漏洞描述 MS08-067漏洞的全称为& ...
- (广搜) Find a way -- hdu -- 2612
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2612 Find a way Time Limit: 3000/1000 MS (Java/Others) ...