我有以下简单的代码,我双击一个div(类容器),它只是克隆自己在另一个div内(id 包含 - 包装) :
HTML
<span class="container">div one</span>
<div id="containment-wrapper">
</div>
Jquery的
$(".container").dblclick(function() {
$(this).clone().appendTo('#containment-wrapper');
});
当我双击原始div时,它会克隆自身并在包含内部放置一个div但是当我双击一个克隆的div时,即使它有class = container也没有做任何事情,为什么会发生这种情况?我尝试了许多不同的方法来克隆它,但没有任何效果。
答案 0 :(得分:2)
因为dblclick不受新div的约束。您可以使用live
轻松完成您想要实现的目标$(".container").live('dblclick', function() {
$(this).clone().appendTo('#containment-wrapper');
});
答案 1 :(得分:2)
这是因为没有克隆事件处理程序。请改用delegate
:
$(".container").delegate("","dblclick",function() {
$(this).clone().appendTo('#containment-wrapper');
});
答案 2 :(得分:1)
由于您正在动态添加div标记,因此它们不会自动绑定到您指定的.dblclick函数。使用live事件处理程序是解决此问题的一种方法。