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