Javascript 按ID选择图像

Javascript 按ID选择图像,javascript,jquery,html,css,Javascript,Jquery,Html,Css,可以使用jQuery根据id选择图像吗?因为当我尝试它时,它不起作用。这是正确的方法吗?谢谢 $(document).ready(function () { $("#imageID").click(function (){ $("#imageID").addClass("className"); }); }); 这可能是因为绑定事件时元素不在DOM中。然后,您可以尝试使用jquery上的函数进行绑定,并将事件绑定到body,例如: $(document

可以使用jQuery根据id选择图像吗?因为当我尝试它时,它不起作用。这是正确的方法吗?谢谢

$(document).ready(function () {
    $("#imageID").click(function (){
        $("#imageID").addClass("className");
    });    
});

这可能是因为绑定事件时元素不在DOM中。然后,您可以尝试使用jquery上的
函数进行绑定,并将事件绑定到
body
,例如:

 $(document).ready(function () {
     $("body").on("click", "#imageID", function (){
         $(e.target).addClass("className");
     });   
 });

这可能是因为绑定事件时元素不在DOM中。然后,您可以尝试使用jquery上的
函数进行绑定,并将事件绑定到
body
,例如:

 $(document).ready(function () {
     $("body").on("click", "#imageID", function (){
         $(e.target).addClass("className");
     });   
 });

首先,检查重复的id

更好的方法:

$(document).ready(function () {
    $("#imageID").on('click', function (){
        $(this).addClass("className");
    });
});
另外,它只向单击的图像添加新的类名,而不是向所有图像添加新的类名,所以这是正确的方法

出现问题的原因可能是您有多个带有
#imageID
id的标记

所以,更好的方法是使用js-*类:

<img src="/images/img.png" class="js-my-image" alt="">
如果在页面加载后添加图像,右代码:

$(document).ready(function () {
    $(document).on('click', '.js-my-image', function (){
        $(this).addClass("className");
    });
});


首先,检查重复的id

更好的方法:

$(document).ready(function () {
    $("#imageID").on('click', function (){
        $(this).addClass("className");
    });
});
另外,它只向单击的图像添加新的类名,而不是向所有图像添加新的类名,所以这是正确的方法

出现问题的原因可能是您有多个带有
#imageID
id的标记

所以,更好的方法是使用js-*类:

<img src="/images/img.png" class="js-my-image" alt="">
如果在页面加载后添加图像,右代码:

$(document).ready(function () {
    $(document).on('click', '.js-my-image', function (){
        $(this).addClass("className");
    });
});


是的,这是一种正确的方式。尽管向我们展示您的html,但我希望它不是动态生成的图像?如果您的图像是动态生成的,您必须使用类似于
$(body)的内容是的,这是一种正确的方式..尽管向我们展示您的html,我希望它不是动态生成的图像?如果您的图像是动态生成的,您必须使用类似于
$(body)的内容。('click','img',function(){$(this).addClass(“className”);})