首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AppendChild Javascript

AppendChild Javascript
EN

Stack Overflow用户
提问于 2014-04-02 06:51:12
回答 2查看 136关注 0票数 0

我试图将图像附加到引导列中,但没有成功,有人知道我的代码出了什么问题吗?

代码语言:javascript
复制
for (i = 0; i <= 11; i++) {
     var img = new Image();
     img.src = 'http://imagecache.arnoldclark.com/imageserver/" + obfuscatedString + "/" + camera[i] + "';
     var row = "<div class='row'><div class='col-md-2'> + img[0] +</div></div>";
     document.body.appendChild(row);
}

任何帮助都是非常感谢的。谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-04-02 06:58:53

抱歉,您的代码没有任何实际意义。它有很多地方不对劲:

以下是您开始的内容:

代码语言:javascript
复制
for (i = 0; i <= 11; i++) {
     var img = new Image();
     img.src = 'http://imagecache.arnoldclark.com/imageserver/" + obfuscatedString + "/" + camera[i] + "';
     var row = "<div class='row'><div class='col-md-2'> + img[0] +</div></div>";
     document.body.appendChild(row);
}

问题:

  1. 您可以创建一个<img> DOM对象,但不要对它做任何操作。
  2. 你需要传递一个DOM对象给appendChild(),而不是传递一个字符串。
  3. 你不能通过在字符串中添加img[0]来构造一个字符串。它根本就不是这样工作的。您可以完全使用HTML字符串,也可以使用构造的HTML对象,或者创建一个HTML对象,然后将.innerHTML设置为一个HTML字符串。你不能就这样把两者混为一谈。--

我来猜猜你想做什么:

代码语言:javascript
复制
for (i = 0; i <= 11; i++) {
     var src = "http://imagecache.arnoldclark.com/imageserver/" + obfuscatedString + "/" + camera[i];
     var row = document.createElement("div");
     row.className = 'row';
     row.innerHTML = "<div class='col-md-2'><img src='" + src + "'></div>";
     document.body.appendChild(row);
}

此代码执行以下步骤:

  1. 计算图像源URL。
  2. 创建容器div DOM对象。
  3. 在容器对象上设置所需的超文本标记语言。
  4. 将容器的.innerHTML属性设置为容器中所需的超文本标记语言字符串(这将自动在容器中创建该组DOM对象)。<代码>H225<代码>G226
票数 3
EN

Stack Overflow用户

发布于 2014-04-02 06:54:49

下面是一个完全使用javascript的解决方案

代码语言:javascript
复制
var camera = ['http://placehold.it/200x200']

for (i = 0; i <= 0; i++) {
    var img = new Image();
    img.src = camera[i];
    var row = document.createElement('div');
    row.className = 'row';
    var imgContainer = document.createElement('div');
    imgContainer.className = 'col-md-2';
    imgContainer.appendChild(img);
    row.appendChild(imgContainer);
    document.body.appendChild(row);
}

和一个jsfiddle演示http://jsfiddle.net/576Tm/1

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22798420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档