我有以下代码:
$("#content h1").on("click", function(){
var f = $(this);
var clicked_id = f.data("id");
var children = _.filter(data, function(key){
var id = key.id.split("-")
id.pop()
id = id.join("-")
return clicked_id == id;
});
if (children.length != 0) {
$("#content").html("");
_.each(children, function(obj){
$("#content").append("<h1 data-id='"+ obj.id +"'>"+ obj.txt +"</h1>")
});
}
});
所以基本上我绑定一个.on&#34;点击&#34;事件到h1。在点击我清理包含H1的元素然后我添加一个新的H1元素。现在点击不再注册。我该怎么做才能继续点击?
答案 0 :(得分:1)
像这样使用on
(事件委托):
$("#content").on("click", "h1", function() {
现在,每次点击#content
,它都会检查h1
并运行该事件。您之前的代码仅在运行时将处理程序绑定到h1
。
答案 1 :(得分:0)
也许你可以这样绑定?
$(document).on("click", "#content h1", function(){
...
});