想问下这里为什么还要加上$self.attr("src") === false呢,直接undefined应该就可以了吧
if ($self.attr("src") === undefined || $self.attr("src") === false) { if ($self.is("img")) { $self.attr("src", settings.placeholder); } }
认证高级PHP讲师
我觉得可能是作者叶不太熟悉jquery,所以写了些多余的代码吧,根据文档:
jquery
注意黄色部分,说attr除了作用在个别value或者tabindex返回值可能特殊点以外,其他字段都返回字符串(那当然包括src了)。
attr
value
tabindex
src
然后再看黄色部分下面那句,如果该属性没设置的时候,返回的是undefined
undefined
所以,基本可以断定,后面那句$self.attr("src") === false没有意义
$self.attr("src") === false
这个不太能理解,如果上下文如果出现了false的情况 为什么不做判断呢
我觉得可能是作者叶不太熟悉
jquery
,所以写了些多余的代码吧,根据文档:注意黄色部分,说
attr
除了作用在个别value
或者tabindex
返回值可能特殊点以外,其他字段都返回字符串(那当然包括src
了)。然后再看黄色部分下面那句,如果该属性没设置的时候,返回的是
undefined
所以,基本可以断定,后面那句
$self.attr("src") === false
没有意义这个不太能理解,如果上下文如果出现了false的情况 为什么不做判断呢