質問

クリックするとクローン化されて別の要素に追加される画像のサムネイルがいくつかあるページがあります。私が走っている問題は、私がする必要があるすべての要素が appendTo すべてが同じクラスを持っています。したがって、1つのサムネイルをクリックすると、クラスを持っているすべての要素に追加されます view_full_img. 。これが私が仕事をしなければならないHTMLです。これらを異なるクラスで単にターゲットにすることは私にとってはうまくいきません。このHTMLはDrupalによって生成されます。

<div class="view_full_img"></div>
<div class="thumbs">
    <div class="img blue"></div>
    <div class="img green"></div>
    <div class="img yellow"></div>
</div>

<div class="view_full_img"></div>
<div class="thumbs">
    <div class="img red"></div>
    <div class="img purple"></div>
    <div class="img orange"></div>
</div>

これが私のjQueryです。

$(".thumbs div").click(function(){
    $(".view_full_img div").remove();
    $(this).clone().appendTo(".view_full_img");
});

私が起こりたいのは、私が1つをクリックしたときです .thumbs div私はそれを作りたいです .view_full_img その真上のdiv。の組み合わせを使用してみました closest() prev() parent() など、うまくいくものを思い付くことができません。

これがjsfiddleです...http://jsfiddle.net/dmcgrew/uetv6/

役に立ちましたか?

解決 2

$(".thumbs div").click(function () {
    var t = $(this);
    t.appendTo(t.parent().prev(".view_full_img"));
});

他のヒント

あなたが必要です parent(), 、 それから prev():

$(".thumbs div").click(function () {
    $(this).parent().prev(".view_full_img").empty().append($(this).clone());
});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top