2012-04-05 27 views
2

從邏輯上說,我想將圖像嵌入到div中的鏈接中。我已經通過鏈接或圖像成功完成了這個任務。我甚至用鏈接和圖像並行(這是無用的)來達到我的目的。但似乎無法將圖像封裝在div內的鏈接中。div.appendChild()。appendChild()

var div = OpenLayers.Util.createDiv(); 
var img = OpenLayers.Util.createImage(null, null, null, null, null, null, null, delayDisplay); 
img.className = "olAlphaImg"; 
img.alt = altText; 

var link = document.createElement("a"); 
// link.setAttribute("href", "#"); 
link.href="#" + altText; 
link.appendChild(img); 

div.appendChild(link); 

OpenLayers.Util.modifyAlphaImageDiv(div, id, px, sz, imgURL, position, border, sizing, opacity, altText); 

return div; 

這是一個OpenLayers,我試圖確保鍵盤導航。我只是不確定如何用JavaScript做到這一點,所有的例子只使用一個appendChild引用。我嘗試過使用innerHTML(),但我沒有使用字符串,因此看起來並不有用。

+0

你能爲此設置jsfiddle嗎 – 2012-04-05 12:54:23

+0

真的..我會盡力做到下一次。奧列格的答案在下面回答了我的問題,但如果我剛剛完成了你首先提出的建議,情況會更好。 – 2012-04-05 20:47:19

回答

3

你是什麼意思

似乎無法有包裹在一個鏈接一個div

是否遇到了任何錯誤,裏面的形象呢?

我可能誤解了你的問題,但如果沒有,你的代碼應該工作。

下面是我的示例:a working jsfiddle將圖像封裝到某個容器的鏈接中。

var img = document.createElement('img'); 
img.src = 'https://www.google.fr/images/srpr/logo3w.png'; 

var anchor = document.createElement('a'); 
anchor.href = 'http://google.com'; 

// Wrap image in the link (anchor): 
anchor.appendChild(img); 
// Insert the anchor into container: 
document.getElementById('container').appendChild(anchor); 
+0

謝謝奧列格。這絕對有幫助。我在這裏玩了一下。我將它捆綁在OpenLayers中,並沒有收到錯誤。把它拉進一個jsFiddle幫助! http://jsfiddle.net/mgifford/9jbc7/9/ – 2012-04-05 13:56:14