我想选择带有 any data
的所有元素jQuery 中的属性。这可能吗?我知道如何在选择器的属性值中使用通配符,但我找不到在属性名称中使用通配符的方法。
我无法使用.data()
因为它还匹配其他对象,例如窗口。我只想选择带有 data
的元素HTML 中的属性。
最佳答案
试试这个
var $result = $('*').filter(function(){
return !$.isEmptyObject($(this).data());
});
或者如果您只是谈论属性:
var $result = $('*').filter(function(){
var ret = false;
$.each(this.attributes, function() {
if(/^data-/.test(this.nodeName)){
ret = true;
return false; //to break the loop
}
});
return ret;
});
也许不是最有效的方法,但是嘿
关于javascript - 如何将元素与 jQuery 中的任何数据属性进行匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21733855/