div.appendChild().appendChild()

3

从逻辑上讲,我想在一个 div 中嵌入一个带有链接的图片。我已经成功地使用链接或图片中的任一种方法来实现这一点。甚至为了我的目的,我已经将链接和图片并行(这是无用的)。但似乎无法将图片包装在一个带有链接的 div 内。

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()方法,但由于没有使用字符串,所以似乎没有什么用处。


你能为这个设置JSFiddle吗? - Sandeep Manne
True。下次我会尝试做到这一点。Oleg在下面的回答解决了我的问题,但如果我一开始就按照你的建议去做,效果会更好。 - Mike Gifford
1个回答

5

您的意思是什么?

无法将图像包含在 div 中的链接中。

您是否遇到任何错误?

我可能误解了您的问题,但如果没有,您的代码应该可以工作。

这是我的一个示例:有效的 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);

谢谢Oleg。这确实有帮助。我在这里试着改了一下。我之前把它绑定在OpenLayers中并没有出现错误。把它从中拉出来放到jsFiddle上真的很有帮助!http://jsfiddle.net/mgifford/9jbc7/9/ - Mike Gifford

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接