$(function(){
$("div").click(function(){
$(this).clone().insertAfter( $(this) );
});
});
这是一个愚蠢的小页面,每次单击 DIV 时,它都会生成它的副本并将其放置在它之后。
这似乎工作正常,但仅适用于已硬编码的 DIV。当 DIV 被克隆然后单击时,没有任何反应,因为事件尚未绑定到它。
什么是使这项工作的正确方法?
$(function(){
$("div").click(function(){
$(this).clone().insertAfter( $(this) );
});
});
这是一个愚蠢的小页面,每次单击 DIV 时,它都会生成它的副本并将其放置在它之后。
这似乎工作正常,但仅适用于已硬编码的 DIV。当 DIV 被克隆然后单击时,没有任何反应,因为事件尚未绑定到它。
什么是使这项工作的正确方法?
$("body").on("click", "div", function() {
//...
});
该.live()
函数曾经用于此目的,但在 jQuery 1.7 中已弃用。
有一个特殊的 jQuery 函数,.live()
$(function(){
$("div").live("click",function(){
$(this).clone().insertAfter( $(this) );
});
});