3

我正在做一个小项目,但遇到了问题。我正在使用 jQuery 创建新元素。所以因为页面加载时它们不在文档中,所以我无法以任何方式操作它们。有没有办法让 jQuery 读取新元素以解决我的问题?

$("img.fbimg").click(function(){
    $(this).hide();
});
4

2 回答 2

3

您需要使用事件委托:

$("body").on("click", "img.fbimg", function() {
    $(this).hide();
});

在这里,您可以"body"替换为.img.fbimg

于 2012-11-13T13:18:13.353 回答
1

你似乎需要

$(document.body).on('click', "img.fbimg", function(){
    $(this).hide();
});

即使click在选择器为"img.fbimg".

请注意,如果您有一个更精确的元素包含您的图像并在加载时存在,那么使用它会更有效

$('#idOfElementContainingAllTheImages').on('click', "img.fbimg", function(){

参考

于 2012-11-13T13:18:01.197 回答