kan*_*rbk 6 html javascript jquery dom
我正在编写一个自定义HTML编辑器.用户可以编辑整个HTML内容,更改将在DOM中更新.我们可以选择撤消所有更改.
逻辑:
在进行更改之前克隆整个容器并再次应用它.
缺点:
在js内存中存储一个巨大的变量.
再次应用这些变化,dom将重新绘制所有内容.
有没有办法实现同样的目标?
你的问题很有用。我不知道处理这种情况的最佳方法是什么,但我知道有命令设计模式可以在这种情况下工作。使用命令设计模式,您可以撤消已保存在程序中的事件。根据我的理解,使用命令设计模式的技巧是,当您需要撤消某些操作时,您需要具有执行相反操作的功能。例如,如果您需要撤消加函数结果,则需要具有减函数。对于绘图功能,您需要具有清除/擦除功能。这是JavaScript 示例。