我们知道js中有三种动态创建元素的方法,jQuery中也可以动态的创建元素
例如:
var str = $("<a href='http://www.baidu.com'>百度</a>");
$("ul").append(str); //将动态创建的str元素追加到ul下面
追加节点
在js当中追加节点的方法是appendChild(节点元素)和insertBefor(节点元素,位置),在jQuery中是
append 追加在父元素的最后一个子节点后面
prepend插入到父元素的第一个子节点前面
after在元素后面追加,同级
befor在元素的前面追加,同级
下面的代码可以很好的演示追加节点
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
div {
width: 200px;
height: 100px;
border: 1px solid red;
}
</style>
<script src="jquery-1.12.2.js"></script>
<script>
$(function () {
//注意:如果传进来的jQuery对象是页面中存在的元素,它会这个对象剪切,
// 所以我们会发现点击后,最下面的p标签被剪切了
var p1 = $("p");
$("#btn1").click(function () {
$("div").append(p1);
});
$("#btn2").click(function () {
$("div").prepend(p1);
});
$("#btn3").click(function () {
$("div").after(p1);
});
$("#btn4").click(function () {
$("div").before(p1);
});
});
</script>
</head>
<body>
<input type="button" id="btn1" value="btnAppend"/>
<input type="button" id="btn2" value="btnPrepend"/>
<input type="button" id="btn3" value="btnAfter"/>
<input type="button" id="btn4" value="btnBefore"/>
<div>div标签1</div>
<p>我要插队。。。</p>
</body>
</html>