jQuery附加元素函数

jQuery附加元素函数,jquery,Jquery,有人能告诉我为什么声明的函数不应用于append()方法创建的元素吗?它确实可以很好地与元素一起工作,但是,当使用上述函数添加另一个元素时,该操作不会触发 包含div的info_box变量使用函数$(“.notification close”)关闭。单击(function(){),但当使用append()方法创建该框时,它不再工作 $(document).ready(function () { //setTimeout(function(){$(".notification-box")

有人能告诉我为什么声明的函数不应用于append()方法创建的元素吗?它确实可以很好地与元素一起工作,但是,当使用上述函数添加另一个元素时,该操作不会触发

包含div的info_box变量使用函数
$(“.notification close”)关闭。单击(function(){
),但当使用append()方法创建该框时,它不再工作

    $(document).ready(function () {

//setTimeout(function(){$(".notification-box").fadeOut("slow");}, 6000);
$(".notification-close").click(function(){
    $(".notification-box").fadeOut("slow");return false;
});


// AJAX
$(".lightbox_delete_button").easyconfirm({locale: { title: 'Delete', button: ['No','Yes']}});

$(".lightbox_delete_button").click(function () {

var pictid_lightbox = $(this).parent().find('#pictid_lightbox').val();
var thumb_container = $(this).parents('.thumb_container');
var tools_counter = $('body').find('#tools_lightbox_count').text();
var reduced_tools_counter = parseInt(tools_counter)-1;
var info_box = "<div class=\"notification-box notification-box-info\"><p>You don't have any images in your lightbox</p><a href=\"#\" class=\"notification-close notification-close-info\">x</a></div>";
$.ajax({
            url: "ajax.html",
            type: "POST",
            async:false,
            data: ({f:"test_ajax",pictid_lightbox:pictid_lightbox}),
            success: function(data){
            alert(data);
thumb_container.fadeOut("slow");
$($('body').find('#tools_lightbox_count')).replaceWith('<span id=\"tools_lightbox_count\">' + reduced_tools_counter.toString() + '</span>');
if(reduced_tools_counter == 0){
$('body').find('#center_column').append(info_box);
}else{
alert('not empty');
}
            }
});

return false;
});


});
$(文档).ready(函数(){
//setTimeout(function(){$(“.notification box”).fadeOut(“slow”);},6000);
$(“.notification close”)。单击(函数(){
$(“.notification box”).fadeOut(“slow”);返回false;
});
//阿贾克斯
$(“.lightbox\u delete\u button”).easyconfirm({locale:{title:'delete',button:['No','Yes']}});
$(“.lightbox\u删除按钮”)。单击(函数(){
var pictid_lightbox=$(this.parent().find('#pictid_lightbox').val();
var thumb_container=$(this).parents('.thumb_container');
var tools_counter=$('body').find('tools_lightbox_count').text();
var-reduced\u-tools\u-counter=parseInt(tools\u-counter)-1;
var info_box=“您的lightbox中没有任何图像”

”; $.ajax({ url:“ajax.html”, 类型:“POST”, async:false, 数据:({f:“test_ajax”,pictid_lightbox:pictid_lightbox}), 成功:功能(数据){ 警报(数据); 拇指容器淡出(“慢”); $($('body')。查找('tools_lightbox_count'))。替换为(''+reduced_tools_counter.toString()+''); if(减少的工具计数器==0){ $('body')。查找('center_column')。追加(信息框); }否则{ 警报(“非空”); } } }); 返回false; }); });
尝试使用或。当前代码无法工作,因为加载页面时附加的内容不存在。

绑定事件处理程序时,DOM中不存在动态元素,因此必须将事件处理程序绑定到实际存在的元素,也称为委托事件处理程序:

$('#center_column').on('click', '.notification-close', function(){
     $(".notification-box").fadeOut("slow");
});

首先,请发布你引用的代码。我们不是读心术者,也没有心灵感应。其次,我猜你应该使用活动授权。我把水晶球忘在办公室了,那又是什么功能?