如果不存在,则向图像添加 alt 属性



我正在尝试为所有图像设置属性。现在我有了这样的内容:

function init(){
imgs = document.images;
for(i=0;i<imgs.length;i++){
imgs[i].alt="test";
}
}

,但现在我替换所有的alt。如何添加一个属性,只有图像,没有它?

这将替换所有没有alt属性或alt属性设置为空字符串的图像的alt属性:

function init(){
imgs = document.images;
for(i=0;i<imgs.length;i++){
if (!imgs[i].alt){
imgs[i].alt="test";
}
}
}

您可以使用getAttribute()方法检查图像是否具有属性:

init();
function init(){
imgs = document.images;
for(i=0;i<imgs.length;i++){

console.log(imgs[i].getAttribute("alt"));

// Here check
if (imgs[i].getAttribute("alt") === null) {
imgs[i].alt="test";
}
}
}
<img alt="hello">
<img alt="hello">
<img>

您可以通过检查给定元素是否具有alt属性来实现这一点。

function init()
{ 
imgs = document.images;
for(i=0;i<imgs.length;i++) { 
if (imgs[i].hasAttribute("alt")) {
continue;
}
imgs[i].alt="test"; 
} 
}

最新更新