2013-06-18 83 views
0

我試圖添加一個新的div元素到所有圖像。我需要將新的div文本顯示在所有圖像的右下角。添加新的div到圖像元素

什麼我試着:

var links = document.images; 
for (var i=0; i < links.length; i++){ 
    var div_link = document.createElement("div"); 
    div_link.style.position = "relative"; 
    div_link.style.bottom = "10px"; 
    div_link.style.left = "10px"; 
    div_link.innerHTML = "56259"; 
    console.log(links[i]); 
    links[i].appendChild(div_link); 
} 

回答

3

圖片不能有子元素,因此追加對他們來說是行不通的。您可以在圖像前插入div。

links[i].parentNode.insertBefore(links[i], div_link); 
+0

或者,包裹IMG例如使用jQuery:'$(「img」)。wrap(「

」);'。 – mg007

+0

如果你想在圖片後插入div,你可以做如下的事情:links [i] .parentNode.insertBefore(div_link,links [i] .nextSibling); – Sean

+0

@ mg007,世界上哪裏有jQuery包含在這裏? – epascarello

1

使用數字元件:

<figure> 
    <img src="img_pulpit.jpg" alt="The Pulpit Rock" width="304" height="228"> 
    <figcaption>Fig.1 - A view of the pulpit rock in Norway.</figcaption> 
</figure> 

裹與jQuery圖像是這樣的:

$('img').wrap('<figure />'); 
$('figure').append('<figcaption>Nice image!</figcaption>'); 
+0

jQuery標籤在哪裏? ;) – epascarello