Rimuove gli elementi selezionati includendo dati ed eventi
$(selector).remove(selector)
<script>
$(document).ready(function(){
$("div").click(function(){
alert("hai cliccato");
});
var rem;
$("#b1").click(function(){
rem = $("div").remove();
});
$("#b2").click(function(){
$("body").prepend(rem);
});
});
</script>
<div style="width:100px; height:100px; border:1px solid red;"></div>
<button id="b1">rimuovi</button>
<button id="b2">aggiungi</button>
In questo caso, dopo aver rimosso il div, perdiamo l’evento
Vediamo la differenza con detach:
<script>
$(document).ready(function(){
$("div").click(function(){
alert("hai cliccato");
});
var rem;
$("#b1").click(function(){
rem = $("div").detach();
});
$("#b2").click(function(){
$("body").prepend(rem);
});
});
</script>
<div style="width:100px; height:100px; border:1px solid red;"></div>
<button id="b1">rimuovi</button>
<button id="b2">aggiungi</button>
L’evento click sul div, viene mantenuto, infatti se clicchiamo prima su b1 e poi su b2, al click sul div viene mostrato il messaggio