我有以下 div:
<div id="2" class="maindiv">test</div>
<div id="5" class="maindiv">test</div>
<div id="3" class="maindiv">test</div>
<div id="1" class="maindiv">test</div>
<div class="maindiv">test</div>
<div id="4" class="maindiv">test</div>
如何在 jQuery 或 Javascript 中获取最高 id(5)和最低 id(1)?
最佳答案
为此,您可以创建一个包含所有 id
值的数组,然后使用 Math
获取最高/最低值:
var ids = $('.maindiv[id]').map((i, el) => parseInt(el.id, 10)).get();
var lowest = Math.min.apply(Math, ids); // = 1
var highest = Math.max.apply(Math, ids); // = 5
console.log(`${lowest} => ${highest}`);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="2" class="maindiv">test</div>
<div id="5" class="maindiv">test</div>
<div id="3" class="maindiv">test</div>
<div id="1" class="maindiv">test</div>
<div class="maindiv">test</div>
<div id="4" class="maindiv">test</div>
请注意 [id]
属性选择器是必需的,否则将假定 0
为缺失值。
如果需要IE支持,需要使用匿名函数代替箭头函数:
var ids = $(".maindiv[id]").map(function() {
return parseInt(this.id, 10);
}).get();
关于javascript - 在 jQuery 或 Javascript 中获取某个属性的最高值和最低值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14775921/