0

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

  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。非常感谢!

4

2 回答 2

4

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

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

如果您尝试定位单个元素,您可能希望使用idHTML 属性而不是class,那么:

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

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

于 2012-08-31T00:40:53.670 回答
0

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

document.getElementById('id_of_the_element').src = "new_img.png";
于 2012-08-31T04:42:04.453 回答