javascript - 循环和数组问题

标签 javascript arrays loops for-loop

好的,我有一个文字数组,其中有一些图像。我有一个空的 DIV,其中将执行 FOR 循环以显示 div 中数组中的所有图像。

var icons = [
    '<img src="images/1.png" width="30" height="30"/>',
    '<img src="images/2.png" width="30" height="30"/>',
    '<img src="images/3.png" width="30" height="30"/>'
    ];

    var lol = document.getElementById("div");

    for (var i=0; i<icons.length; i++) {
            lol.innerHTML = icons[i] ;
        }

问题是仅显示最后一张图像,而不是全部...

最佳答案

那是因为您正在用当前图像覆盖前一个图像。如果要附加/连接所有图像,请使用 +=:

lol.innerHTML += icons[i];

处理这个问题的更好方法是使用 DOM 处理:

var img = document.createElement("img");
img.setAttribute("src", icons[i]);

lol.appendChild(img);

关于javascript - 循环和数组问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13207255/

相关文章:

php - 只有在 Wordpress 中有子菜单时才显示菜单项

c - while 循环无条件退出 false

javascript - 装饰和访问 $rootScope 方法

javascript - Google 表格 - 从列中生成所有可能的字符串组合

javascript - 如何使用输入类型=文件允许接受的文件类型不受限制?

javascript - node.js 中类实例之间的共享数组

python - 选择两个数组中的值

linux - Bash - for循环中的多个条件

javascript - 在 JavaScript 对象中包装 DOM 元素

javascript - 如何将 PivotItems 动态绑定(bind)到 html 页面