jQuery 新增元素
透過 jQuery,可以輕鬆地新增元素/內容。
新增新的HTML 內容
#我們將學習用於新增內容的四個jQuery 方法:
append() - 在被選元素的結尾插入內容
#prepend() - 在被選元素的開頭插入內容
after() - 在被選元素之後插入內容
before() - 在被選元素之前插入內容
jQuery append() 方法
#jQuery append() 方法在被選元素的結尾插入內容。
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("#btn1").click(function(){ $("p").append(" <b>追加文本</b>。"); }); $("#btn2").click(function(){ $("ol").append("<li>追加列表项</li>"); }); }); </script> </head> <body> <p>这是一个段落。</p> <p>这是另外一个段落。</p> <ol> <li>列表项 1</li> <li>列表项 2</li> <li>列表项 3</li> </ol> <button id="btn1">添加文本</button> <button id="btn2">添加列表项</button> </body> </html>
執行程式嘗試
jQuery prepend() 方法
jQuery prepend() 方法在被選元素的開頭插入內容。
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("#btn1").click(function(){ $("p").prepend("<b>在开头追加文本</b>。 "); }); $("#btn2").click(function(){ $("ol").prepend("<li>在开头添加列表项</li>"); }); }); </script> </head> <body> <p>这是一个段落。</p> <p>这是另外一个段落。</p> <ol> <li>列表 1</li> <li>列表 2</li> <li>列表 3</li> </ol> <button id="btn1">添加文本</button> <button id="btn2">添加列表项</button> </body> </html>
運行程式嘗試
透過append() 和prepend() 方法加入若干新元素
在在上面的範例中,我們只在被選元素的開頭/結尾插入文字/HTML。
不過,append() 和 prepend() 方法能夠透過參數接收無限數量的新元素。可以透過 jQuery 來產生文字/HTML(就像上面的範例),或透過 JavaScript 程式碼和 DOM 元素。
在下面的範例中,我們建立若干個新元素。這些元素可以透過 text/HTML、jQuery 或 JavaScript/DOM 來建立。然後我們透過append() 方法把這些新元素追加到文本中(對prepend() 同樣有效):
##實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> function appendText(){ var txt1="<p>文本。</p>"; // 使用 HTML 标签创建文本 var txt2=$("<p></p>").text("文本。"); // 使用 jQuery 创建文本 var txt3=document.createElement("p"); txt3.innerHTML="文本。"; // 使用 DOM 创建文本 text with DOM $("body").append(txt1,txt2,txt3); // 追加新元素 } </script> </head> <body> <p>这是一个段落。</p> <button onclick="appendText()">追加文本</button> </body> </html>運行程式嘗試一下
jQuery after() 和 before() 方法
jQuery after() 方法在被選元素之後插入內容。
jQuery before() 方法在被選元素之前插入內容。
實例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> $(document).ready(function(){ $("#btn1").click(function(){ $("img").before("<b>之前</b>"); }); $("#btn2").click(function(){ $("img").after("<i>之后</i>"); }); }); </script> </head> <body> <img src="/upload/course/000/000/006/580b170b612ba140.jpg" height="150" width="150"> <br><br> <button id="btn1">之前插入</button> <button id="btn2">之后插入</button> </body> </html>
運行程式嘗試
透過after() 和before() 方法加入若干新元素
after() 和before() 方法能夠透過參數接收無限數量的新元素。可以透過 text/HTML、jQuery 或 JavaScript/DOM 來建立新元素。
在下面的範例中,我們建立若干新元素。這些元素可以透過 text/HTML、jQuery 或 JavaScript/DOM 來建立。然後我們透過after() 方法把這些新元素插到文字中(對before() 同樣有效):
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </script> <script> function afterText(){ var txt1="<b>I </b>"; // 使用 HTML 创建元素 var txt2=$("<i></i>").text("love "); // 使用 jQuery 创建元素 var txt3=document.createElement("big"); // 使用 DOM 创建元素 txt3.innerHTML="jQuery!"; $("img").after(txt1,txt2,txt3); // 在图片后添加文本 } </script> </head> <body> <img src="/upload/course/000/000/006/580b170b612ba140.jpg" height="150" width="150"> <br><br> <button onclick="afterText()">之后插入</button> </body> </html>
運行程式嘗試