10

I wanted to copy DOM element in variable, so I did this:

var before=$("#someid").html();

Then my script does a bunch of stuff in this "someid" DOM and after that is completed I restored DOM like it was before:

$("#someid").html(before);

This works ok but the problem is that I had some events in this DOM and those events can not be copied like this... So is there another way to do this?

domagojk
  • 1,020
  • 2
  • 11
  • 25

1 Answers1

20

The clone() method can preserve both event handlers and element data. You can write:

var $before = $("#someid").clone(true);

Then later:

$("#someid").replaceWith($before);
Frédéric Hamidi
  • 258,201
  • 41
  • 486
  • 479