0

0

jQuery 批量设置元素 data-index 属性的高效实现方法

花韻仙語

花韻仙語

发布时间:2026-01-13 10:05:08

|

271人浏览过

|

来源于php中文网

原创

jQuery 批量设置元素 data-index 属性的高效实现方法

本文介绍如何使用 jquery 为每组连续 3 个元素统一设置递增的 `data-index` 值(如 3、6、9…),解决批量动态赋值需求,避免硬编码并提升可维护性。

在实际开发中,常需为 DOM 元素批量添加或更新 data-* 属性以支持后续逻辑(如分页渲染、动画分组、虚拟滚动索引等)。本例要求:将 .item 元素按每 3 个一组划分,第一组 data-index="3",第二组 "6",第三组 "9",依此类推——即索引值呈等差数列(公差为 3),且每组内保持一致。

核心思路是利用当前元素索引 i(从 0 开始)计算所属“组号”,再映射为对应数据值。关键公式为:

var index = 3 * Math.floor(i / 3) + 3;
  • Math.floor(i / 3) 将索引 i 归入整数组(0→0, 1→0, 2→0, 3→1, 4→1, 5→1…),即每 3 个元素为一组;
  • 乘以 3 得到基础值(0, 3, 6…),再加 3 即得目标序列(3, 6, 9…)。

完整实现代码如下:

$('.item').each(function(i) {
  var index = 3 * Math.floor(i / 3) + 3;
  $(this).attr('data-index', index);
});

优势说明

公文宝
公文宝

AI公文写作神器,一键生成合规材料

下载
  • 无需预知总数量,自动适配任意长度列表;
  • 时间复杂度 O(n),性能高效;
  • 可轻松扩展:若需每 5 个一组、起始值为 10,仅需改为 10 * Math.floor(i / 5) + 10。

⚠️ 注意事项

  • 确保 jQuery 已正确加载且 DOM 已就绪(建议包裹在 $(document).ready() 中);
  • 若元素动态插入,需在插入后重新执行该逻辑,或使用事件委托配合 data-index 的语义化用途;
  • 如需兼容旧版 IE 或追求极致性能,可改用原生 setAttribute(this.setAttribute('data-index', index)),避免 jQuery 封装开销。

该方案简洁、健壮、可复用,是处理分组数据属性赋值的经典实践。

相关专题

更多
jquery插件有哪些
jquery插件有哪些

jquery插件有jQuery UI、jQuery Validate、jQuery DataTables、jQuery Slick、jQuery LazyLoad、jQuery Countdown、jQuery Lightbox、jQuery FullCalendar、jQuery Chosen和jQuery EasyUI等。本专题为大家提供jquery插件相关的文章、下载、课程内容,供大家免费下载体验。

150

2023.09.12

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

309

2023.10.13

jquery删除元素的方法
jquery删除元素的方法

jquery可以通过.remove() 方法、 .detach() 方法、.empty() 方法、.unwrap() 方法、.replaceWith() 方法、.html('') 方法和.hide() 方法来删除元素。更多关于jquery相关的问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

393

2023.11.10

jQuery hover()方法的使用
jQuery hover()方法的使用

hover()是jQuery中一个常用的方法,它用于绑定两个事件处理函数,这两个函数将在鼠标指针进入和离开匹配的元素时执行。想了解更多hover()的相关内容,可以阅读本专题下面的文章。

494

2023.12.04

jquery实现分页方法
jquery实现分页方法

在jQuery中实现分页可以使用插件或者自定义实现。想了解更多jquery分页的相关内容,可以阅读本专题下面的文章。

178

2023.12.06

jquery中隐藏元素是什么
jquery中隐藏元素是什么

jquery中隐藏元素是非常重要的一个概念,在使用jquery隐藏元素之前,需要先了解css样式中关于元素隐藏的属性,比如display、visibility、opacity等属性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

118

2024.02.23

jquery中什么是高亮显示
jquery中什么是高亮显示

jquery中高亮显示是指对页面搜索关键词时进行高亮显示,其实现办法:1、先获取要高亮显示的行,获取搜索的内容,再遍历整行内容,最后添加高亮颜色;2、使用“jquery highlight”高亮插件。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

172

2024.02.23

DOM是什么意思
DOM是什么意思

dom的英文全称是documentobjectmodel,表示文件对象模型,是w3c组织推荐的处理可扩展置标语言的标准编程接口;dom是html文档的内存中对象表示,它提供了使用javascript与网页交互的方式。想了解更多的相关内容,可以阅读本专题下面的文章。

2917

2024.08.14

PHP 表单处理与文件上传安全实战
PHP 表单处理与文件上传安全实战

本专题聚焦 PHP 在表单处理与文件上传场景中的实战与安全问题,系统讲解表单数据获取与校验、XSS 与 CSRF 防护、文件类型与大小限制、上传目录安全配置、恶意文件识别以及常见安全漏洞的防范策略。通过贴近真实业务的案例,帮助学习者掌握 安全、规范地处理用户输入与文件上传的完整开发流程。

1

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
jQuery 教程
jQuery 教程

共42课时 | 4.1万人学习

HTML+CSS基础与实战
HTML+CSS基础与实战

共132课时 | 9.5万人学习

tp6+adminlte搭建通用后台
tp6+adminlte搭建通用后台

共39课时 | 5.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号