2017-08-04 25 views
-1
<div class='crumb'>home</div> 
<div class='crumb'>sky</div> 
<div class='crumb'>sea</div> 

sky und sea werden dynamisch appendTo Funktion jQuery verwenden hinzugefügt entfernen.kann nicht dynamisch hinzugefügt Element

Jetzt möchte ich alle crumbs größer als dann einen geklickt haben.
Zum Beispiel: sky ist angeklickt, ich erwarte, dass sea entfernt wird.

$(document).on('click', '.crumb', function() { 
    var i = $(this).index(".crumb"); 
    $(".crumb:gt(i)").remove(); 
}); 

Nichts ist entfernt!

+0

@Taplar, wegen der Brotkrumen-Funktion. – bonaca

+0

@charlietfl Scheint mir gut. Ich meine anders als die falsch verkettete Variable – j08691

Antwort

5
$(this).nextAll().remove(); 

Holen Sie sich alle Elemente, nachdem sie und entfernen Sie sie

+0

gelöst. Vielen Dank – bonaca

2

$(document).on('click', '.crumb', function() { 
 
    var i = $(this).index(".crumb"); 
 
    $(".crumb:gt("+i+")").remove(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class='crumb'>home</div> 
 
<div class='crumb'>sky</div> 
 
<div class='crumb'>sea</div>

+1

Meine schlechte ... habe es seit Jahren benutzt, aber immer anders herum. Ich habe nur in api geschaut und wusste nicht, dass man beides machen könnte. Habe immer '$ ('. Crumb') verwendet. Index (this)' .. eine andere Möglichkeit, dasselbe zu tun – charlietfl

0

Versuchen Sie diesen Code

$(document).on('click', '.crumb', function() { 
 
    $(this).nextAll().remove(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class='crumb'>home</div> 
 
<div class='crumb'>sky</div> 
 
<div class='crumb'>sea</div>

Verwandte Themen