jQuery Ajaxy插件:在主菜单上调用ajax后,在新菜单上再次使用该插件

jQuery Ajaxy插件:在主菜单上调用ajax后,在新菜单上再次使用该插件,jquery,ajax,Jquery,Ajax,我正在网站主菜单上使用Ajaxy。 我的问题是,当我从ajax调用中获得结果时,我会动态创建一个树菜单,因此我必须在树菜单上使用与主菜单相同的函数。 树菜单是使用以下代码创建的: $("#tree .menu").html($("#main .menu").html()); 有没有可能让它与另一个插件一起工作? 任何帮助都将不胜感激。 谢谢。如果我正确理解您的问题,您希望复制DOM中的现有元素并向其添加事件(单击、拖动、插件等) 如果是,那么您可以这样做: 克隆要使用.Clone()复制的

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

$("#tree .menu").html($("#main .menu").html()); 
有没有可能让它与另一个插件一起工作? 任何帮助都将不胜感激。
谢谢。

如果我正确理解您的问题,您希望复制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);
        });
    });

谢谢您的回复,但这不是我的问题。。我已经找到了解决方案,没有使用任何历史插件,但现在我必须使它与后退按钮和书签的工作。出于这个原因,我使用jquery ajaxy插件。你的意思是我必须在ajaxy插件启动之前复制菜单吗?我试过了,但没有成功。我不明白你的问题。你能分步描述你想要什么吗?1) 用户单击…1)用户单击菜单,2)然后使用ajax获取html文件,3)同时在html文本旁边创建一个树菜单,4)现在用户可以单击主菜单或树菜单,并获得相同的结果。我找到了解决办法。我在一个隐藏的div上创建树菜单,然后当用户单击菜单时,树菜单就会出现。我已经用jQueryAjax完成了所有这些,网站运行得很好。但是我无法处理历史。最好的方法是使用history.js,因为我已经有了可用的函数,但我对jquery和javascript还不熟悉,所以对我来说很难。