在Javascript中为数组中的每个对象生成图像标记

时间:2014-12-07 22:07:05

标签: javascript html



我知道我的问题可能看起来很愚蠢,但是我对这段代码感到困惑,而且我在使用Javascript 我希望能够在我的页面内显示一些链接文本中的图像。 它可能看似扭曲,但这正是我想要做的:-)
到目前为止,我已经设法解决了这个问题,如果这可以给你一个想法:

<a href="#">http://www.online-image-editor.com/styles/2013/images/example_image.png</a>
<a href="#">http://images.math.cnrs.fr/IMG/png/section8-image.png</a>
<a href="#">http://www.online-image-editor.com/styles/2013/images/example_image.png</a>


var liens = document.getElementsByTagName('a'),
valeurs = [];

for (i = 0; i < liens.length; i += 1) { 
 if (liens[i].text) {        
    valeurs.push(liens[i].text);
    document.body.innerHTML = "<img src='" + valeurs[i] + "'>";
  }
}

谢谢!

1 个答案:

答案 0 :(得分:2)

嗯,你几乎就在那里。对您的代码最简单的修复是更改此行:

document.body.innerHTML = "<img src='" + valeurs[i] + "'>";

进入这个:

document.body.innerHTML += "<img src='" + valeurs[i] + "'>";

这将附加到innerHTML,而不是覆盖它。

稍微好一点的解决方案是实际创建DOM节点而不是修改innerHTML。因此上述行可以替换为:

var img = document.createElement('img');
img.src = valeurs[i];
document.body.appendChild(img);

您可以查看here