$ .clone与ajax XHR请求中断事件?

时间:2011-11-24 00:55:28

标签: javascript jquery ajax clone

我不确定这是否是一个jQuery错误(使用1.7.1)或者它是否意味着这样(我不明白为什么会这样,但无论如何):< / p>

试试这个jsfiddle:http://jsfiddle.net/qFLpe/1/

基本上,我可以使用JS创建一个HTML块,将事件绑定到它,然后使用var clones = $(elem).clone(true, true)将其存储在变量中以用于事件深度。乍一看,它看起来好像很好。从DOM中擦除具有绑定事件的元素,然后从变量中恢复。您可以单击它们,然后它们将运行绑定事件。

更新:看起来它只是在第二次调用$ .html(clones)时丢失事件,无论它是否是XHR ......

但是......一旦任何AJAX请求运行......事件不再受约束? HTML仍然存在,但不是事件。我不太清楚为什么?就像AJAX事件以某种方式重置存储在该变量中的克隆事件一样......?

1 个答案:

答案 0 :(得分:2)

使用$.live,工作正常。

我不认为它与$.get有关;使用bind评论它会产生相同的不工作性。

请参阅clone doc页面上的最新评论:

  

[...]但请注意,.html()等函数会从节点中删除数据和事件。

不确定第一个带有克隆的html