2012-02-17 45 views
0

我的网站对导航的每个部分都使用ajax和hashtags,所以每个元素(除了主要导航部分)都通过ajax加载,这会断开与这些内部元素(或其他发生的任何元素)的DOM连接,所以我不能只是有这样的事情在我的javascirpt,它的一切工作:jQuery ajax加载元素,自动添加事件给他们?

$(".chat-wrapper li").draggable(); 

目前我已经把这个在我的Ajax调用的成功一部分,所以当聊天按钮加载它增加了这对他们来说,这不是我唯一的问题,它发生在很多事情上,这只是我目前的例子,所以我的问题是,jQuery或任何东西都有办法解决这个问题?必须有一些这样做的方法,所以在初始页面加载之后调用的任何元素也可以与这些和所有元素一起使用。

谢谢。

回答

0

如果你正在寻找一个事件绑定到一个元素,并保持它,你可以看看jQuery功能.live()

http://api.jquery.com/live/

编辑:咋一看后,它会出现.on jQuery的1.7+(http://api.jquery.com/on/)和.delegate()(HTTP://api.jquery。 com/delegate /)为jQuery 1.4.3+将是更好的解决方案。存在于页面链接为每个函数用法的例子,但你也许可以使用这种方式(我可能是错的,因为我只是很快它打印了出来):

$(".chat-wrapper").delegate("li", "bind", function() { 
    this.draggable(); 
}); 

或者:

$(".chat-wrapper li").on("bind", function() { 
    this.draggable(); 
}); 
+0

以及我在()上使用其他的东西,也许这是一个愚蠢的问题,但我将如何使用/ live与.draggable()? – 2012-02-17 01:49:15

+0

@DylanCross我更新了我的答案。希望它有一点帮助。 – fayerth 2012-02-17 01:58:38

+0

谢谢,但我没有任何运气。 – 2012-02-17 02:03:45

相关问题