比如说
<ul id="ul">
<li data-id="1"></li>
<li data-id="2"></li>
<li data-id="3"></li>
</ul>
如何获取将所有data-id弄成一个集合(比如数组)?
我是想实现判断出data-id中的最大值,我的想法是把data-id弄成一个集合,在比较,是否有更好的想法?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我最初想的是能不能
$("#ul").find("*").data("id")
直接取得。可惜.data()
是jQuery中不多见的不能用于集合元素的方法。对一个jQuery集合调用.data()
结果是只对第一个元素生效。所以这个需求就必须明确使用jQuery里集合遍历的相关方法了。其实也很简单:
.map()
方法忽略所有的undefined,因此不用对不包含data-id
属性的子元素做出任何特殊处理。