如何获取没有属性的元素的集合?

时间:2016-08-22 10:32:25

标签: jquery

如何获取未使用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中预期的方式不同,但这是在我试图搜索链接而不是图像的项目中,所以我不是在寻找图像......

1 个答案:

答案 0 :(得分:1)

试试这个:在方括号中使用带有属性名称的:not,请参阅下面的代码

$('a > img:not[alt]')

注意:在>

之前和之后放置一个空格