在ajax加载后绑定自定义事件处理程序

时间:2010-08-08 22:01:51

标签: ajax bind lightbox jquery

具体来说,我希望将灯箱绑定到特定元素。通常我会这样做:$('a.lightbox').lightBox();但由于我正在使用AJAX进行一些加载,因此无效。查看jQuery API,我发现.bind().live(),但在AJAX $('a.lightbox').bind('lightBox')调用之后{I} .load()我没有得到任何内容。

我错过了什么?

2 个答案:

答案 0 :(得分:5)

您需要添加一个处理该功能的回调函数。

$("#div").load(url, {}, function(){ $('a.lightbox').lightBox(); });

Bind不会帮助你,因为事件没有触发事件。

答案 1 :(得分:1)

另一种方法是绑定到dom中更高的元素并检查目标类型。如:

$('#div').bind('click', function (event) {
    target = $(event.target);
    if (target.hasClass('lightbox')) {
        // do stuff here
    }
});

只是不要走太远,否则你会抓住太多点击。