1. 程式人生 > >jq 追加元素的幾種方法(append()、prepend()、after()、before()、insertAfter()、insertBefore())

jq 追加元素的幾種方法(append()、prepend()、after()、before()、insertAfter()、insertBefore())

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>js中常用追加元素的幾種方法</title>
		<link rel="stylesheet" href="css/rest.css" />
		<style>
			.container {
				width: 1200px;
				padding: 10px;
				margin: 50px auto;
				border: 1px solid lightcoral;
			}
			#wrap{
				border: 1px solid lightseagreen;
			}			
			.container p{
				height: 30px;
				line-height: 30px;
			}
			.btn-group{
				margin-top: 20px;
			}
			button{
				width: 80px;
				height: 32px;
				margin-right: 10px;
				line-height: 32px;
				text-align: center;
				border: 0px;
			}
		</style>
	</head>
	<body>
		<div class="container">
			<div id="wrap">
				<p class="first">我是第一個子元素</p>
				<p class="second">我是第二個子元素</p>
			</div>
			<div class="btn-group">
				<button class="append">append</button>
				<button class="appendTo">appendTo</button>
				<button class="prepend">prepend</button>
				<button class="prependTo">prependTo</button>
				<button class="after">after</button>
				<button class="before">before</button>
				<button class="appendChild" onclick="appChild()">appendChild</button>
				<button class="insertAfter">insertAfter</button>
				<button class="insertBefore">insertBefore</button>
			</div>
			
		</div>
		
	</body>
</html>
<script src="js/jquery-1.9.1.min.js"></script>
<script>
	$(function(){
		//append(),在父級最後追加一個子元素
		$(".append").click(function(){
			$("#wrap").append("<p class='three'>我是子元素append</p>");
		});
		
		//appendTo(),將子元素追加到父級的最後
		$(".appendTo").click(function(){
			$("<p class='three'>我是子元素appendTo</p>").appendTo($("#wrap"));
		});
		
		//prepend(),在父級最前面追加一個子元素
		$(".prepend").click(function(){
			$("#wrap").prepend("<p class='three'>我是子元素prepend</p>");
		});
		
		//prependTo(),將子元素追加到父級的最前面
		$(".prependTo").click(function(){
			$("<p class='three'>我是子元素prependTo</p>").prependTo($("#wrap"));
		});
		
		//after(),在當前元素之後追加(是同級關係)
		$(".after").click(function(){
			$("#wrap").after("<p class='siblings'>我是同級元素after</p>");
		});
		
		//before(),在當前元素之前追加(是同級關係)
		$(".before").click(function(){
			$("#wrap").before("<p class='siblings'>我是同級元素before</p>");
		});
		
		//insertAfter(),將元素追加到指定物件的後面(是同級關係)
		$(".insertAfter").click(function(){
			$("<p class='three'>我是同級元素insertAfter</p>").insertAfter($("#wrap"));
		});
		//insertBefore(),將元素追加到指定物件的前面(是同級關係)
		$(".insertBefore").click(function(){
			$("<p class='three'>我是同級元素insertBefore</p>").insertBefore($("#wrap"));
		});
	});	
	
	//appendChild(),在節點的最後追加子元素
	function appChild(){
			// 建立p節點
			var para=document.createElement("p");
			// 建立文字節點
			var node=document.createTextNode("我是子集appendChild新段落。");
			// 把文字節點新增到p節點裡
			para.appendChild(node);
			 
			// 查詢div1
			var element=document.getElementById("wrap");
			// 把p節點新增到div1裡
			element.appendChild(para);
	}
</script>

以下是單擊每個按鈕之後的效果。

jQuery新增插入元素技巧:

jquery新增分為在指定元素的裡面新增外面新增兩種:

裡面新增使用(append 和prepend)

裡面新增又分為在裡面的前面新增和後面新增

裡面的前面新增使用 prepend和prependTo

裡面的後面新增使用 append  或appendTo

外面新增使用(after和before)

外面新增又分為在外面的前面新增和後面新增

外面的前面新增使用 before或insertBefore

外面的後面新增使用 after或insertAfter