6

DIVのクローンを作成し、divの直後に追加して、新しい識別子を指定するにはどうすればよいですか?

クラスのあるDIVがありreflectionます。このDIVの各インスタンスを複製し、元のインスタンスの直後に挿入しますが、クラスを使用しますreflected(クラスなしreflection)。jQueryを使用してこれを実現するにはどうすればよいですか?

これが私の現在のフィドルですが、正しく機能しません... http://jsfiddle.net/yUgn9/

4

2 に答える 2

9

関数をに渡し.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/

于 2012-02-08T22:51:46.907 に答える
2

それらを個別に処理するには、それらの.each()が必要になると思います。コードが現在行っているのは、それらすべてを取得し、それらすべての後にクローンを作成することです。代わりに、必要に応じてクラスを変更した後、それぞれを個別に処理し、元のクローンの後にクローンを挿入する必要があります。

$(document).ready(function(){

    $('div.reflection').each(function () {
        var org = $(this),
            clone = org.clone();

        clone.removeClass('reflection').addClass('reflected')
            .insertAfter(org);
    });

});
于 2012-02-08T22:49:51.323 に答える