jQuery检查最后三个数据属性是否相等
jQuery check if the last three data attributes are equal to
假设这是HTML:
<div id="chat">
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="3">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
</div>
如何检查最后三个user attributes
是否为7
您可以将nth-last-child选择器与属性选择器组合使用:
var is = $('.msg:nth-last-child(-n+3)[data-user=7]').length === 3;
if (is) {
console.log('last 3 messages has data-user 7');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="chat">
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="3">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
</div>
尝试使用.slice()
, .get()
, Array.prototype.every()
var res = $("#chat .msg").slice(-3).get().every(function(val) {
return val.dataset.user === "7"
});
console.log(res)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="chat">
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="3">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
<div class="msg" data-user="7">bla</div>
</div>
相关文章:
- 使用jQuery获取第N个元素的数据属性值
- jQuery:从数据属性中删除除前4个字符外的所有字符
- 根据三个模型属性对主干集合进行排序
- JS 字段验证 - 循环遍历对象,每个字段有三个数据注意事项
- jQuery 选择器,用于通过比较元素的两个数据属性来选择元素
- 如何循环访问其第三个单元格具有 rowspan 属性的每一行
- 无法更改三个容器中的 SVG 矩形属性
- 如何获取第三个父项的 ID 属性值
- jQuery 查找具有一个数据键和多个值的数据属性
- JQuery - 使用不同输入的多个筛选器过滤数据属性
- 如何在第三个函数中使用从两个不同函数生成的数据
- Html将5个数据属性转换为jquery插件选项格式
- Javascript从三个文件加载JSON数据
- 使用数据属性在一个函数中Jquery多个选择器
- 如何根据多个数据属性筛选搜索结果
- Angular 1.4.8/JS:创建构造函数并将属性继承到第三个对象中
- 如何使用数据属性而不是它们的值来链接两个下拉列表
- 从变量中获取第二个数据属性值
- jQuery检查最后三个数据属性是否相等
- 使用Linq.js从Json数据的三个字段中选择两个字段