Jquery绑定不适用于加载AJAX的HTML

时间:2010-05-29 15:17:15

标签: jquery ajax dom bind

这是我的jquery代码

jQuery(document).ready (function() {

   // post
    $('.post').bind('mouseenter mouseleave', function() {
        $(this).filter('.btn').toggleClass('hidden');
    });


});

它在普通文档上运行良好。但是当我使用ajax加载一些HTM :(即一些具有.post属性的div)并将其嵌入到我的DOM中。

上面的代码不适用于那些div。

2 个答案:

答案 0 :(得分:3)

尝试使用live

jQuery(document).ready (function() {
    $('.post').live('mouseenter mouseleave', function() {
        $(this).filter('.btn').toggleClass('hidden');
    });
});

或者更好delegate

jQuery(document).ready (function() {
    $('#posts').delegate('.post','mouseenter mouseleave', function() {
        $(this).filter('.btn').toggleClass('hidden');
    });
});

答案 1 :(得分:2)

您的时间可能已关闭,因为具有.post属性的div必须实际存在于dom中才能绑定任何内容。