$("img[data-src!='']")选择器问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

$("img[data-src!='']")选择器问题

小旋风柴进 2016-05-30 10:14:52 1120
html:
<img src="img/123.jpg" />
<img src="img/loading.gif" data-src="img/1.jpg"/>
<img src="img/loading.gif" data-src="img/2.jpg"/>

我要做个懒加载,用jquery获取到页面中的image元素,但有些img不带 data-src自定义属性的不做处理

以下选择器把不带data-src的img也获取了,是什么原因呢
var getImgs = $("img[data-src!='']")

JavaScript
分享到
取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:19:10

    [attr!='value'] 这个选择器不是标准选择器,是 jQuery 扩展的功能,在 jQuery 的实现里面,如果元素不包含attr,并且属性选择符是 !=,这个元素也会被加到最终的结果里面。

    你的 DOM 结构如果是下面这种,选择器返回的才是你想要的结果。

    <img src="img/123.jpg" data-src/>
    <img src="img/loading.gif" data-src="img/1.jpg"/>
    <img src="img/loading.gif" data-src="img/2.jpg"/>

    根据你的需求和 DOM 结构,应该用 「含有某个属性选择器」,而不是「某个属性不等于选择器」。

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程