带有新ID的jQuery.colone.insertAfter

jQuery .clone .insertAfter with a new ID

本文关键字:jQuery colone insertAfter ID      更新时间:2023-09-26

如何克隆div,将其直接附加在div之后,并为其提供新的标识符?

我有一个类为reflection的DIV,我希望这个DIV的每个实例都被克隆,并直接插入到原始实例之后,但使用类reflected(没有类reflection)如何使用jQuery实现这一点?

这是我现在的小提琴,但它不能正常工作。。。http://jsfiddle.net/yUgn9/

将函数传递给.after(),并让它返回更新的克隆。

$('div.reflection').after(function() {
    return $(this).clone().toggleClass('reflection reflected');
});

演示:http://jsfiddle.net/PFBVX/


在旧版本的jQuery中,请执行以下操作。。。

$('div.reflection').each(function() {
    $(this).after($(this).clone().toggleClass('reflection reflected'));
});

演示:http://jsfiddle.net/PFBVX/1/

我相信您需要.each()来单独处理它们。代码目前正在做的是获取所有这些数据并在所有数据之后进行克隆。相反,您希望单独处理它们中的每一个,并在根据需要更改类之后,在原始类之后插入克隆。

$(document).ready(function(){
    $('div.reflection').each(function () {
        var org = $(this),
            clone = org.clone();
        clone.removeClass('reflection').addClass('reflected')
            .insertAfter(org);
    });
});