Произошла ошибка.
Пожалуйста, обновите страницу.
Fly.js > Документация > Изменение DOM > $(...).insertAfter()

$(...).insertAfter()

Вставляет узлы текущей FlyNode в DOM дерево после каждого переданного элемента.

#Изменение DOM

$(...).insertAfter([source], node1, [node2], [nodeN])

                    FlyDomNode: {
                        __constructor: function(context) {
                            var array = fnNodeList.makeDomNodeArray(context);
                            for (var a = 0, al = array.length; a < al; a++) {
                                this[a] = array[a];
                            }
                            this.length = al;
                        },

                        size: function() {
                            return this.length;
                        },

                        get: function(index) {
                            return $.isNumber(index) ? this[index] : [].slice.call(this);
                        },

                        addNode: function(flyNode) {
                            return fnNodeList.changeNodeContext(this, flyNode, function(child, context) {
                                context.indexOf(child) === -1 && context.push(child);
                            });
                        },

                        removeNode: function(flyNode) {
                            return fnNodeList.changeNodeContext(this, flyNode, function(child, context) {
                                var position = context.indexOf(child);
                                if (position !== -1) context.splice(position, 1);
                            });
                        },

                        eq: function(index) {
                            if (index < 0) index = index + this.length;
                            return new this.__self(this[index]);
                        },

                        lt: function(index) {
                            return new this.__self(this.slice(0, index));
                        },

                        gt: function(index) {
                            return new this.__self(this.slice(index));
                        },

                        last: function(selector) {
                            var element = this[this.length - 1];
                            return new this.__self(fnStyle.isMatch(element, selector) ? element : []);
                        },

                        first: function(selector) {
                            var element = this[0];
                            return new this.__self(fnStyle.isMatch(element, selector) ? element : []);
                        },

                        normalize: function() {
                            return fnNodeList.transformNodeContext(this, function(item, context) {
                                if ($.isNode(item)) context.push(item);
                            });
                        },

                        each: function(callback, context) {
                            $.each(this, callback, context);
                            return this;
                        },

                        name: function() {
                            return this[0].tagName.toLowerCase() || null;
                        }
                    }
                

$(...).insertAfter([source], node1, [node2], [nodeN])
Возвращает: FlyNode [$]

Вставляет узлы текущей FlyNode в DOM дерево после каждого переданного элемента.

source: Boolean !!

Флаг для вставки исходных узлов (без клонирования).

node1: Array [] or FlyNode [$] or Node <> or NodeList [<>] or String ABC

Сосед для вставки узлов после него.

node2: Array [] or FlyNode [$] or Node <> or NodeList [<>] or String ABC

Сосед для вставки узлов после него.

nodeN: Array [] or FlyNode [$] or Node <> or NodeList [<>] or String ABC

Сосед для вставки узлов после него.

По умолчанию в DOM дерево будут вставлены клонированные узлы. Если требуется работать с исходными (переданными в параметрах), нужно выставить флаг source в значение true.

Параметры node1, node2, nodeN... могут быть представлены массивом или коллекцией узлов, одним узлом, объектом FlyNode или селектором (строкой).

Если производится множественная вставка узлов, не забывайте удалять исходные элементы. Для этого отлично подходит метод $(...).remove(), возвращающий удалённые узлы.

Метод $(...).insertAfter() очень похож на $(...).after(), только соседи и узлы для вставки поменяны местами.

Пример: Вставка абзаца после каждого заголовка.

<!DOCTYPE html>
    <head>
        <meta charset="utf-8"/>
        <title>Fly.js - $(...).insertAfter()</title>

        <script src="/scripts/fly.js"></script>

        <style>
            p, h3 {margin: 0}
        </style>
    </head>
    <body>
        <p>I am a paragraph.</p>
        <h3>Header</h3>
        <h3>Header</h3>
        <h3>Header</h3>

        <script>
            $('p').remove().insertAfter('h3');
        </script>
    </body>
</html>

Пример: Перемещение абзаца и добавление нового.

<!DOCTYPE html>
    <head>
        <meta charset="utf-8"/>
        <title>Fly.js - $(...).insertAfter()</title>

        <script src="/scripts/fly.js"></script>

        <style>
            p, h3 {margin: 0}
        </style>
    </head>
    <body>
        <p>I am a paragraph.</p>
        <h3>Header</h3>

        <script>
            $('p').insertAfter(true, 'h3');
            $('<p>I am the second paragraph. Hello world!</p>').insertAfter(true, $('h3'));
        </script>
    </body>
</html>