2010-04-26 115 views
5

是否有可用於實現JavaScript中DOM元素操作的撤銷/重做功能的庫?撤消實現 - DOM操作

我在寫一個可以在DOM元素周圍移動的prototype.js應用程序(memonaut),可以編輯和刪除這些元素。有事件處理程序和與每個操作元素相關的其他對象。

不知道我是否需要爲此編譯自己的Command模式實現。當然,必須有一些可用的東西?如果不是,建議和指針將是一個很大的幫助。

+2

你要多層次撤銷/重做,或只需一個步驟? – nfm 2010-05-18 02:49:00

+1

多級撤消 – sonofdelphi 2010-05-19 14:11:39

回答

5

看看jQuery插件「undoable」。

+0

有沒有關於Prototype的任何知識? – sonofdelphi 2010-04-26 18:25:13

+0

我從來沒有使用過Prototype,對不起。我只知道YUI,ExtJS和jQuery。 – 2010-04-26 18:26:44

+7

jquery可以與原型'共存',使用無衝突選項http://api.jquery.com/jQuery.noConflict/ var $ j = jQuery.noConflict(); //現在使用$ j作爲jquery並繼續使用$作爲原型 – house9 2010-04-26 18:31:58

1

原型只提供對象的淺層克隆。所以我相信你需要推出自己的深度克隆方法(this可能有所幫助)。然後,當用戶操縱DOM時,只需將克隆版本壓入堆棧,並在用戶選擇撤消時將其從堆棧彈出即可。

1

我已經在GWT圖形API中看到撤消重做。您可以檢查以下URL。

GWT是大家今天使用的圖書館。它支持Java類中的實現代碼,然後將其編譯爲JS。

嘗試找到它周圍,因爲我們曾經這是支持撤銷/重做高達n級類似流程圖的Web應用程序的事..

希望這有助於實現。

http://code.google.com/p/gwt-dnd/