0

为了让我的灯箱正常工作,我试图在包含儿童图像的链接上设置数据属性“灯箱”。这似乎不太好用。我有这个小提琴

var links = $(".single .entry-content a");
links.each(function () {
    if ($(this).children("img").length > 0) {
        $(this).data("lightbox","image-gallery");
        console.log("test");
    }
});

控制台记录,但未设置数据属性。我做错了什么?

4

2 回答 2

3

尝试

$(".single .entry-content a:has(> img)").attr('data-lightbox', 'image-gallery')

演示:小提琴

于 2013-09-20T13:22:49.393 回答
2

jQuery 的.data()函数不添加数据属性,而是使用它自己的内部存储机制。要实际更改属性,您需要使用attr()

$('.single .entry-content a').has('> img').attr('data-lightbox', 'image-gallery');
于 2013-09-20T13:26:03.203 回答