使用Jquery向每个图像添加数据属性

使用Jquery向每个图像添加数据属性,jquery,custom-data-attribute,Jquery,Custom Data Attribute,我需要有一个数据属性添加到页面上的每个图像。这个数据图像提供了一个lightbox功能,但是因为有这么多图像,所以最好使用Jquery来自动化它 到目前为止,我已经使用了数据属性的可能性,如: $('.item a).attr('data-lightbox'); 我在一个页面上有多个图像,所有带有.item div的图像都应该应用data属性。我的想法正确吗?您正在使用一个getter方法,只将键作为参数传入。您需要使用setter并传入一个键和值。正确的语法是 $(selector).dat

我需要有一个数据属性添加到页面上的每个图像。这个数据图像提供了一个lightbox功能,但是因为有这么多图像,所以最好使用Jquery来自动化它

到目前为止,我已经使用了数据属性的可能性,如:

$('.item a).attr('data-lightbox');

我在一个页面上有多个图像,所有带有.item div的图像都应该应用data属性。我的想法正确吗?

您正在使用一个
getter
方法,只将键作为参数传入。您需要使用setter并传入一个键和值。正确的语法是

$(selector).data(name,value)
在图像上循环并使用
data()
方法

$("img").each(function() {
    $(this).data("lightbox", "value");
});
这就可以了


$('.item img').attr('data-lightbox','value')

你能用容器发布你的html图像吗?哦,我的回答帮你了吗?JQuery提供了更多像setter和gotter这样的方法。attr()方法当您只提供键时,它将给出返回值;当您同时设置键和值时,它将更改选择元素上的属性$('.a').attr('data-lightbox','value');最好使用内置的数据方法,也许这可以证明你的观点基本上这就是诀窍:$j(“.item page a”).each(function(){$j(this.attr(“data uk lightbox”,“value”);});这似乎是一种合乎逻辑的做法。但是它不起作用。我可以补充一点,div标记中没有数据属性。基本上看起来是这样的:而且需要这样