我应该循环 document.getElementsByClassName 但首先进行检查。
对于一个元素,我会这样做:
if (document.getElementsByClassName('lazyload img-responsive wp-post-image')[0].getAttribute('width') < 500){
document.getElementsByClassName('lazyload img-responsive wp-post-image')[0].setAttribute("srcset", " https://www......jpg ");}
但是我必须为更多元素重复它,我永远不知道有多少。我需要这样一个循环,但首先验证 document.getElementsByClassName ('lazyload img-responsive wp-post-image') [0] .getAttribute ('width') <500。
var elements = document.getElementsByClassName('lazyload img-responsive wp-post-image');
for (var i = 0, l = elements.length; i < l; i++) {
elements[i].setAttribute("srcset", " https://www......jpg ");
}
我怎么解决?谢谢
不确定您的要求是否明确。是不是,你只需要检查element[0]
它的宽度,然后设置srcset
所有剩余的元素?或者您需要分别测试element[i]
和elements[i].setAttribute("srcset", " https://www......jpg ");
如果第一个是真的,那么你可以尝试:
var elements = document.getElementsByClassName('lazyload img-responsive wp-post-image');
if(elements[0].getAttribute('width') < 500){
for (var i = 0, l = elements.length; i < l; i++) {
elements[i].setAttribute("srcset", " https://www......jpg ");
}
}
如果 2nd 为真,则尝试:
var elements = document.getElementsByClassName('lazyload img-responsive wp-post-image');
for (var i = 0, l = elements.length; i < l; i++) {
if(elements[0].getAttribute('width') < 500){
elements[i].setAttribute("srcset", " https://www......jpg ");
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句