我想选择所有在其上定义了accesskey的元素。
我知道我可以这样做:$('[accesskey]')
,但这会在页面上给我很多输入,href等等(大多数都有一个空的访问键)。
仅选择accesskey实际具有值的元素的方法是什么?
编辑:我发现空的accesskeys的原因也是由多个模态对话框中的一些旧的禁用/恢复accesskeys javascript函数引起的..通常你不会用空的accesskeys获得那么多的元素子>
答案 0 :(得分:2)
有一个选择器:
$('[accesskey][accesskey!=""]').foo
它是如何运作的:
// Has the accesskey attribute defined.
[accesskey]
// Doesn't have an empty value for the accesskey attribute.
[accesskey!=""]
一起它会选择每个具有accesskey
属性且不为空的元素。
答案 1 :(得分:1)
你可以这样做
$('[accesskey]').filter(function(){
return $(this).prop('accessKey');
});
.filter()
或其他人已经说过你可以使用attribute-not-equal-selector
<强> Working sample 强>
答案 2 :(得分:0)
你可以使用和额外的循环
$("[accesskey]").each(function() {
if($(this)).attr('accesskey').length > 0) {
// do it
}
}
我希望它能帮到你