如何获取未使用JQuery属性的元素集合?
我想找到链接,其中包含没有alt属性的图片。
我应该使用这样的东西吗?
$('a>img[alt!=""]')
修改
我找到了一个解决它的工作。有一种方法.has可以检测是否有子标签。但是在我的项目中,我从一个被拆分的字符串派生出选择器。这会导致使用.has。
的问题var selectors = 'a.mark-video;a.sp5;a>img[alt!=""]'
selectors = selectors.split(";").join(", ");
$(selectors).each(
function(){
var current = this;
if (this.nodeName == "IMG")
{
current = this.parentNode;
if (current.nodeName != "A")
current = this.parentNode;
if (current.nodeName != "A")
return false;
current = $(current);
}
}
);
在函数中,如果它是a,我会查看父级。我使用“a> img”选择器的方式与JQuery中预期的方式不同,但这是在我试图搜索链接而不是图像的项目中,所以我不是在寻找图像......
答案 0 :(得分:1)
试试这个:在方括号中使用带有属性名称的:not
,请参阅下面的代码
$('a > img:not[alt]')
注意:在>