2012-02-08 2 views
0

내 프로젝트에서 실행 취소 다시 실행 기능을 구현해야합니다. 그러나 그것은 매우 복잡하며 모든 변화는 많은 요소에 영향을 미칩니다. 나는 전체 페이지를 저장하고 복원하는 것이 최선의 선택이라고 생각한다. 하지만 DOM 요소의 .data() 매개 변수가 누락 된 경우 몇 가지 문제가 있습니다. 다음 함수를 사용합니다 :전체 DOM을 자바 스크립트로 바꾸기

// save 
var documentCopy = document.documentElement.cloneNode(true); 

// restore 
document.replaceChild(
documentCopy, 
document.documentElement 
); 

요소의 jQuery.data()를 저장하여 전체 DOM을 저장하고 복원하는 방법은 무엇입니까?

답변

0

jQuery의 clone을 사용하는 것이 쉬운 일은 아닙니다. 두 개의 true 매개 변수와 함께 사용해야하지만 매우 느릴 수 있으므로주의하십시오. 당신이 원하는 것을 성취 할 수있는 유일한 방법이라고 확신합니까? 문서의 더 작은 부분을 대체 할 수 없습니까?

document.documentElement과 잘 작동하지 않는 것으로 보이며 문서의 body과 함께 사용하면 원본 요소의 데이터가 손실되는 것 같습니다 (무엇이라고 말합니까?). Here's a small test.

관련 문제