7.1.8 DOM文档的操作
一、 插入操作
1.父子之间
1. 1 父元素.appand(子元素) //插入到子集的最后一个元素
子元素.appandTo(父元素) //appandTo可以链接编程,简化代码
1.2 父元素.prepend(子元素) //插入到子集的第一个元素
子元素.prependTo(父元素)
2. 兄弟之间
2.1 兄弟元素.after(要插入的元素)
要插入的元素.insertAfter(兄弟元素)
2.2 兄弟元素.before(要插入的元素)
要插入的元素.insertBefore(兄弟元素)
二、替换操作
页面中获取中的DOM对象.replaceWith(替换的内容)
如:$('h2').replaceWith('<span>加油吧</span>')
replaceAll()
如: $('<p stype="color:red;">黑girl</p>').replaceAll('span');
三、删除
remove() 删除 //删除节点后 事件也会删除 删除了整个标签
detach()清空,删除节点后,事件会保留
empty() 清空内容
要删除的对象.remove()
四、克隆
副本具有与真身一样的事件处理能力 完全克隆
$(this).clone(true).insertAfter($(this));
es6的模板字符串 tab键上面那个反引号

子元素可以是String,jsDOM对象,jquery对象
1) $('.box').append('alex') //可以是普通文件
2) $('.box').append('<h2>alex</h2>') //可以标签+文本
3) //插入一个jsDOM对象
var oP=document.createElement('p');
oP.innerText='女朋友'
$('.box').append(oP)
4)//如果插入的是一个jquery对象 相似于移动操作
<div class="wusir">wusir</div>
$('.box').append($('.wusir'))
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<span>哈哈</span>
<ul>
</ul>
<button id="btn">按钮</button>
</body>
<script src="jquery-3.2.1.js"></script>
<script type="text/javascript">
$(function(){
var oLi = document.createElement('li');
oLi.innerHTML = '路飞';
//追加元素
$('ul').append('<li><a href="#">luffy</a></li>');
$('ul').append(oLi);
//如果直接的内容是当前页面中的某些元素,那么这些元素将从原位置上消失。简言之,就是一个移动操作
$('ul').append($('span'));
//appendTo()
$('<a href="#">路飞2</a>').appendTo($('ul'));
// prepend 插入到被选中的元素的第一个位置
$('ul').prepend('<li>我是第一个元素</li>')
$('<li>我是第0个元素</li>').prependTo($('ul'))
//after before
$('ul').after('<h3>我是一个三级标题</h3>');
//insertAfter
$('<a href="#">第一个</a>').insertAfter($('ul'));
$('ul').before('<h2>我是一个二级标题</h2>');
//insertBefore
//复制操作 clone()
$('button').click(function(){
//副本具有与真身一样的事件处理能力 完全克隆
$(this).clone(true).insertAfter($(this));
})
//替换
// $('h3').replaceWith('<button>替换的按钮</button>');
// $('<a href="#">替换超链接</a>').replaceAll('button');
//删除
//empty() 只是清空了被选的内容
// $('ul').empty();
// remove() 被选元素 也被删掉了 事件就没有 什么都没有
// $('ul').remove();
//detach() 移除匹配的节点元素 删除节点后 事件会保留
var $btn = $('button').detach();
console.log($btn[0]);
$('ul').append($btn[0]);
})
</script>
</html>
浙公网安备 33010602011771号