我有<div class="OptionRow">
s后跟<a class="AddGroup">
在.OptionRow
内,我有一个X来移除该行。
.AddGroup正常工作,直到我X克隆了原始元素。这是我的克隆代码和X
$('.AddGroup').click(function(e) {
e.preventDefault();
var $this = $(this);
$this.parent().siblings('.OptionRow:first').clone(true, true).hide().insertBefore($this).fadeIn();
});
$('.CloseGroup').click(function(e) {
e.preventDefault();
$(this).parents('.OptionRow').fadeOut('fast', function() {
$(this).remove();
});
});
答案 0 :(得分:0)
克隆版没有原版的处理程序。
尝试将.live('click', function(e){...})
用于可能解决问题的点击处理程序
答案 1 :(得分:0)
根据@ Microprocessor的建议,我检查了HTML并意识到.OptionRow
克隆被插入到DOM中的错误位置。我使用.insertBefore($this.parent())
代替.insertBefore($this)
解决了这个问题。谢谢@Microprocessor,我不知道为什么我之前没有这样做。