克隆所有“观察”;使用 Prototype 的克隆元素

发布于 2024-10-13 15:33:21 字数 285 浏览 4 评论 0原文

我有一个可排序的列表(使用原型和 scriptaculous 完成):您可以对其元素进行排序或将它们拖到另一个列表中。

当我将一个列表的元素(让我们称之为 ELEMENT_1)放入另一个列表中时,我所做的就是“克隆”所删除的元素,然后将其插入(appendChild)到新列表中。

ELEMENT1 有一些“观察”(单击它执行某些操作,双击它执行其他操作),当我进行克隆时,这些“观察”当然会丢失。我希望克隆的元素具有与 ELEMENT1 相同的“观察”。

我怎样才能做到这一点?

提前致谢

I have a sortable list (done using prototype and scriptaculous): you can sort its elements or drag them into another list.

When I drop the element (let's call it ELEMENT_1) of a list into another one what I do is a 'clone' of the dropped element and then I insert (appendChild) it into the new list.

ELEMENT1 had some 'observe' (clicking on it do something, double-clicking on it do something else) that are of course lost when I do the cloning.. I want the cloned element to have the same 'observe' of ELEMENT1.

How can I do that?

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

如果没有 2024-10-20 15:33:21

观察列表而不是其中的项目,并允许事件冒泡为您完成这项工作。

$('list1','list2').invoke('on', 'click', 'li', function(event, element){
    // "this" is either list1 or list2
    // "element" is the list item
}

Observe the lists instead of their items and allow event bubbling to do the work for you.

$('list1','list2').invoke('on', 'click', 'li', function(event, element){
    // "this" is either list1 or list2
    // "element" is the list item
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文