Angular taking DOM snapshot

I am trying to record the content of a div which is populated using ng-repeat, sort of like taking a snapshot of that div at certain moments so that I don't have to write more code to persist data.

link: function(scope, element, attrs) { scope.game = game;

            var $element = $(element),
            $clone = $element.children().clone();

            scope.$watch('someVariable',function(array){
                if (array[array.length - 1] === scope.id){
                    record($compile($clone)(scope));
                    console.log($compile($clone)(scope));
                }
            },true);

        }

I've been trying variations of code like this but could not get any luck, I've never been able to deep copy the content of the div generated by ng-repeat

any suggestions on how I could copy the exact dynamically genereted content of the div at certain point of time?

If you have the data to present in a ng-repeat you already have the data in the model, you just have to save a snapshot of that data to other object in the Scope. You should manipulate the data in the controller instead of trying to access the DOM directly, this is a big no no in angularjs. Then if you need a Div to reuse, just make a Directive that knows how to present those snapshots you saved in the model.