简单的Javascript代码问题

时间:2012-08-31 00:38:33

标签: javascript

我正在尝试将新图像插入现有元素。我有

  var backImg = createElement('img', { className : 'link', src : '/images/btn.png' });

  var save_bt=document.getElementsByClassName('button');

  save_bt.appendChild(backImg);


The above codes gave me error:

Object #<NodeList> has no method 'appendChild' 

任何人都可以帮我吗?没有Jquery代码plz。非常感谢!

2 个答案:

答案 0 :(得分:4)

document.getElementsByClassName('button')会返回NodeList,而不是元素。如果要将backImg添加到具有类.button的每个元素,则需要遍历该NodeList:

for(var i=0,c=save_bt.length; i<c; i++){
    save_bt[i].appendChild(backImg);
}

如果您尝试定位单个元素,则可能需要使用id HTML属性而不是class,然后:

document.getElementById('button').appendChild(backImg);

请注意,HTML ID在文档中必须是唯一的。

答案 1 :(得分:0)

如果您尝试定位单个元素,则应使用“id”:

document.getElementById('id_of_the_element').src = "new_img.png";