Manipulation-DOM Insertion, Outside

 

一、.after()

將content插入所選擇的元素的最未端(不是元素裡面)。

有三種多載方法

.after( content [, content ] ) content Type: htmlString or Element or Text or Array or jQuery

.after( Function function )

.after( Function function-html )

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .mytest {
            color: red;
        }
    </style>
    <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
    <h2>Greetings</h2>
    <div class="container">
        <div class="inner">Hello</div>
        <div class="inner">Goodbye</div>
    </div>
    <button>append</button>
    <script>
        $("button").click(function () {
            $(".inner").after("<div class='mytest'>Test</div>", "<div class='mytest'>Test2</div>");
        });
    </script>
</body>
</html>

在執行.after()方法後,其內容將變為

<h2>Greetings</h2>
<div class="container">
    <div class="inner">Hello</div>
    <div class="mytest">Test</div>
    <div class="mytest">Test2</div>
    <div class="inner">Goodbye</div>
    <div class="mytest">Test</div>
    <div class="mytest">Test2</div>
</div>

 

二、.insertAfter()

將content插入所選擇的元素的最未端(不是元素裡面)。

其目地跟.after()方法一樣,只是語法對調而已。

其.after()與.insertAfter()差別,請先參考.append()與.appendTo()的差別後,再延伸推倒即知。

 

三、.before()

將content插入所選擇的元素的最前端(不是元素裡面)。

有三種多載方法

.before( content [, content ] ) content Type: htmlString or Element or Text or Array or jQuery

.before( Function function )

.before( Function function-html )

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .mytest {
            color: red;
        }
    </style>
    <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
    <h2>Greetings</h2>
    <div class="container">
        <div class="inner">Hello</div>
        <div class="inner">Goodbye</div>
    </div>
    <button>append</button>
    <script>
        $("button").click(function () {
            $(".inner").before("<div class='mytest'>Test</div>", "<div class='mytest'>Test2</div>");
        });
    </script>
</body>
</html>

在執行.before()方法後,其內容將變為

<h2>Greetings</h2>
<div class="container">
    <div class="mytest">Test</div>
    <div class="mytest">Test2</div>
    <div class="inner">Hello</div>
    <div class="mytest">Test</div>
    <div class="mytest">Test2</div>
    <div class="inner">Goodbye</div>
</div>

 

四、.insertBefore()

將content插入所選擇的元素的最前端(不是元素裡面)。

其目地跟.before()方法一樣,只是語法對調而已。

其.before()與.insertBefore()差別,請先參考.append()與.appendTo()的差別後,再延伸推倒即知。

 

以上四項用法,跟.append()、.appendTo()、.prepend()、.prependTo()也是很相似的。