本文介绍如何在jQuery中动态创建HTML元素,并详细解析四种常用的节点追加方法:append、prepend、after和before。通过具体代码示例,说明如何将新元素插入到父元素的子节点前后或同级位置,帮助开发者掌握DOM操作的常用技巧。
jQuery动态创建元素基础
JavaScript原生提供了三种动态创建元素的方式,而在jQuery库中同样支持动态创建元素的操作。
具体实现方式如下所示:
var str = $("<a href='https://www.jb51.net'>本站</a>");
$("ul").append(str); //将动态创建的str元素追加到ul下面
在原生JavaScript中,追加节点通常使用appendChild(节点元素)或insertBefore(节点元素, 位置)方法;而在jQuery中,提供了更简洁的API。
jQuery追加节点的四种方法
jQuery提供了多种追加节点的方法,具体区别如下:
append:将内容追加到父元素的最后一个子节点之后。
prepend:将内容插入到父元素的第一个子节点之前。
after:在目标元素之后插入同级元素。
before:在目标元素之前插入同级元素。
代码示例演示
以下代码示例可以直观演示上述节点追加的效果:
<!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>
以上即为jQuery动态创建元素及追加节点的完整实现方法,希望对大家有所帮助。