0

我在网站的主菜单上使用 Ajaxy。我的问题是,当我从 ajax 调用中获得结果时,我会动态创建一个树形菜单,因此我必须在树形菜单上使用与主菜单上相同的功能。树形菜单是使用以下代码创建的:

$("#tree .menu").html($("#main .menu").html()); 

即使使用另一个插件也可以使它工作吗?任何帮助,将不胜感激。谢谢。

4

1 回答 1

1

如果我正确理解您的问题,您想复制 DOM 中的现有元素并向其添加事件(单击、拖动、插件等)。

如果是这样,那么你可以这样做:

  • 克隆要复制的元素.clone()并将其存储在变量中(将是一个 jQuery 对象)。
  • 使用您想要的对象(添加事件、更改 html 等)
  • 完成后将其放入所需的 DOM 中

这是一个简单的例子:

    $(document).ready(function() {
        $('.tree li').click(click_func);

        $('a').click(function() {
            var $tree_copy = $('.tree:first').clone();

            // use the cloned object as an jQuery object
            $tree_copy.find('li').click(click_func2);

            // add it to the DOM
            $('body').append($tree_copy);
        });
    });

JsFiddle 示例

于 2013-03-07T15:01:01.070 回答