javascript - jquery的lazyloading源码疑惑
迷茫
迷茫 2017-04-11 11:02:36
[JavaScript讨论组]

lazyload的源码里有一段是说当图片没有设置src属性的时候就添加默认的placeholder图片~但是为什么if判断里还要加$self.attr("src") === false呢~直接undefined就可以了吧~

if ($self.attr("src") === undefined || $self.attr("src") === false) {
  if ($self.is("img")) {
                    $self.attr("src", settings.placeholder);
                }
            }
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
PHPz

As of jQuery 1.6, the .attr() method returns undefined for attributes that have not been set. To retrieve and change DOM properties such as the checked, selected, or disabled state of form elements, use the .prop() method.

jQuery 1.6之后(包含1.6)确实只需要处理undefined就行了,如果要兼容旧版本,就得像作者一样。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号