2017-05-31 16 views
1
<div class="slides"> 
<img class="item-1 cardone" src="images/cardone.jpg"/> 
<img class="item-2 cardtwo" src="images/cardtwo.jpg"/> 
<img class="item-3 cardthree" src="images/cardthree.jpg"/> 
<img class="item-4 cardfour" src="images/cardfour.jpg"/> 
<img class="item-5 cardfive" src="images/cardfive.jpg"/> 
</div> 

<img class="cardone" src="images/cardone.jpg"/><!-- gets added to slides on click, existing image with same class removed at the same time--> 

$('.cardone').click(function(){ 
    var newSrc = $(this).attr('class'); 
    $(this).insertAfter($('.slides img:nth-child(2)')).addClass('item-3'); 
    $('.slides img').not(this).removeClass(newSrc); 
}); 

當cardone被點擊後,它被添加到幻燈片中,試圖用相同的類名替換現有的圖像。我得到的最遠的是刪除類,但不是圖像本身。刪除現有的同級同級,但不是這樣

+0

鑑於您插入'img'而不是簡單地改變其'src' ,你會發現img要插入後,所以你可以使用相同的代碼來刪除img:'$('。slides img:nth-​​child(2)')。remove();' - 就是你想到了? –

+0

@ freedomn-m由於放置在我的傳送帶上,在第n個孩子(2)處插入該特定圖像。問題是我需要刪除具有相同src屬性的相同圖像。我試圖改變src,所以圖像基本上會消失,但也有問題。如果你可以通過一切手段改變src –

+0

你可以傳遞事件作爲參數,並且比下面的代碼行可以幫助:$(event.target).not(this).removeClass(newSrc); – Nimmi

回答

1

你可以像下面: -

$("."+newSrc+"").not(this).remove(); 

例子: -

$('.cardone').click(function(){ 
 
    var newSrc = $(this).attr('class'); 
 
    $("."+newSrc+"").not(this).remove(); 
 
    $(this).insertAfter($('.slides img:nth-child(2)')).addClass('item-3'); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="slides"> 
 
<img class="item-1 cardone" src="images/cardone.jpg"/> 
 
<img class="item-2 cardtwo" src="images/cardtwo.jpg"/> 
 
<img class="item-3 cardthree" src="images/cardthree.jpg"/> 
 
<img class="item-4 cardfour" src="images/cardfour.jpg"/> 
 
<img class="item-5 cardfive" src="images/cardfive.jpg"/> 
 
</div> 
 

 
<img class="cardone" src="images/cardone.jpg"/> // gets added to slides on click, existing image with same class removed at the same time.

+0

我想通過刪除src將刪除圖像元素,但它不會因爲類「item-1」被附加到它。我想我需要img完全刪除,而不僅僅是src。但是你完全按照我的想法去做。 –

+0

@BradVanderbush立即查看 –

+0

太棒了!這也適用。在這之前的代碼我分開了,並使其工作。 $(+ newSrc + 「 」「。」)不是(這個)卸下襬臂( 'IMG')。幫了很多忙。 –