Jquery .on click事件 - 删除绑定元素

时间:2014-08-07 15:16:46

标签: javascript jquery html

我有以下代码:

$("#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元素。现在点击不再注册。我该怎么做才能继续点击?

2 个答案:

答案 0 :(得分:1)

像这样使用on(事件委托):

$("#content").on("click", "h1", function() {

现在,每次点击#content,它都会检查h1并运行该事件。您之前的代码仅在运行时将处理程序绑定到h1

答案 1 :(得分:0)

也许你可以这样绑定?

$(document).on("click", "#content h1", function(){
   ...
});