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>

運行程式嘗試



############################################################################################################## ######
繼續學習
||
<!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="https://img.php.cn/upload/course/000/000/006/580b170b612ba140.jpg" height="150" width="150"> <br><br> <button id="btn1">之前插入</button> <button id="btn2">之后插入</button> </body> </html>