【发布时间】:2012-03-28 12:47:24
【问题描述】:
我正在使用 Mootols 中的可排序菜单,并尝试实现“还原”选项。我想出了一个非常简单的解决方案:
- 一开始就创建根元素克隆。
- 编辑菜单。
- 单击撤消时: a) 用 empty() 清除根元素。 b)我正在创建我的 menuCopy 元素子项的另一个克隆。 c) 根元素采用 menuCopy 子代的克隆。
不知何故,它只工作一次 - 之后我的菜单副本变成了空的根元素。到目前为止,我无法追踪问题。非常感谢帮助。以下是代码的重要部分:
this.menuCopy = $(this.options.menu).clone(true,true);
这部分被调用后:
a) 初始化 b) 保存菜单(因此恢复到保存点)
$(self.options.menu).empty();
var listContentsCopy=self.menuCopy.getChildren().clone(true,true);
$(self.options.menu).adopt(listContentsCopy);
【问题讨论】:
-
发现错误:var listContentsCopy=self.menuCopy.getChildren().clone(true,true);应该是: var listContentsCopy=self.menuCopy.clone(true,true).getChildren();我就知道这很蠢! :)
标签: javascript oop object mootools jquery-ui-sortable