我有一个克隆的元素,它们上面有一些简单的jQuery事件/函数,就像点击动作(我在这个函数中设置了一个log.console)来做一些小动作。
当我克隆元素时,似乎我的jquery函数将不再适用于克隆元素(真实元素仍然可以找到)。
这种行为是否有原因,我该如何解决?
(更新)
我的克隆和我的删除按钮。我在克隆函数中添加了true,但仍然没有发生任何事情。
$('.clone-row').click(function() {
var row = $(this).prev().prev();
$(row).clone(true, true).append('<span class="remove">remove</span>').hide().appendTo('.clones').css('opacity', 0).slideDown(350).animate({ opacity: 1 },{ queue: false, duration: 'slow' });
});
// clone works fine..
$('.remove').click(function(){
console.log('remove');
});
// nothing happens
非常感谢!
答案 0 :(得分:4)
您需要使用.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )
:
$.clone( true, true )
一个布尔值,指示是否应将事件处理程序和数据与元素一起复制。
默认情况下,这是false
!
答案 1 :(得分:0)
变化
$(element).click(handler);
到
$(element).on("click",handler);