0
我有一個容器div,其中幾個跨度是可拖動的。我想爲他們建立一個UNDO功能。我在想:jQuery和HTML5 DOM更改UNDO函數
- 當跨度屬性被更改(位置,CSS)的腳本檢測到DOM變化
- DOM的變化是通過HTML5的localStorage
- 存儲當UNDO函數被調用的最後一個版本的DOM替換當前。
我有基本的localStorage的代碼,將記錄最近的DOM狀態:
$('#undo').live('click', function() {
var testObject = $('#container').html();
// Put the object into storage
localStorage.setItem('testObject', JSON.stringify(testObject));
// Retrieve the object from storage
var retrievedObject = localStorage.getItem('testObject');
alert(retrievedObject);
// retrievedObject should now replace the current DOM
});
});
現在這個代碼只需要當前的DOM,並將其存儲。該警報顯示本地存儲中的內容。我應該嘗試存儲幾個DOM狀態並將它們放入變量中。之後,在每個UNDO上,刪除一個變量... 我不確定這是如何做到的。
對此有何建議? 謝謝
在#container中將會有一些跨度可以由用戶修改(位置,顏色,大小)。這不會很「沉重」。我想使用localStorage,因爲它比服務器Ajax更快。我對真正的本地存儲功能不感興趣,在交叉表中工作,只是想用它作爲存儲空間。 我不知道瀏覽器的任何默認UNDO。如果我可以設法創建一系列變量,那麼是的,該函數將有一堆撤消。 – Mircea
我知道你不想使用「服務器」Ajax,但是你的意圖是「UNDO」的可能性是否是特定瀏覽器的本地特性? – Detro