You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无ID场景下如何将span文本赋值给图片链接的data-group属性

问题解决说明

你当前的代码固定读取页面全局第一个<span>标签的文本,没有和每张图片所属的.two_pics父容器绑定,因此所有图片的data-group都会被设为第一个容器的KZO3,无法实现同组图片共用对应容器span文本的需求。

修正后的完整代码
$(document).ready(function() {
  $('.two_pics div img').each(function() {
    var $img = $(this);
    // 找到当前图片所属的.two_pics父容器
    var $parentGroup = $img.closest('.two_pics');
    // 读取该容器下的span文本
    var groupName = $parentGroup.find('span:first').text().trim();
    // 优先使用img自带的data-group,没有则用span的文本,不需要保留自带值可删除||前的逻辑
    var finalGroup = $img.data('group') || groupName;
    // 包裹a标签
    $img.wrap('<a href="' + $img.attr('src') + '" class="lightbox" data-group="' + finalGroup + '"></a>');
  });
});
注意事项
  • 请先修正你HTML代码中的标签错误:第二个.two_pics内的span标签未闭合,原有代码<span>KZO4</a>需要改为<span>KZO4</span></a>,否则会导致DOM读取文本异常。
  • 修正后运行代码,第一个.two_pics下的两张图data-group都会设为KZO3,第二个.two_pics下的两张图默认会保留自带的data-group="398",如果需要统一用span文本KZO4,直接把finalGroup的赋值改为var finalGroup = groupName即可。

内容的提问来源于stack exchange,提问作者zmajster01

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 08:09:03