Javascript 如何使用HTMLDOM在文本节点之前插入图像
我似乎被这项无伤大雅的任务困住了。一旦找到文本节点,我将尝试插入动态形成的图像标记 例如,如果文本节点是段落中的以下节点,Javascript 如何使用HTMLDOM在文本节点之前插入图像,javascript,dom,Javascript,Dom,我似乎被这项无伤大雅的任务困住了。一旦找到文本节点,我将尝试插入动态形成的图像标记 例如,如果文本节点是段落中的以下节点,这是文本节点,我希望它是这是文本节点 这是我的代码片段: if (nodex.nodeType == 3) { // Node.TEXT_NODE [...] var DOM_img = content.document.createElement("img"); DOM_img.src = "http://www.somesite.com/pi
这是文本节点
,我希望它是这是文本节点
这是我的代码片段:
if (nodex.nodeType == 3) { // Node.TEXT_NODE
[...]
var DOM_img = content.document.createElement("img");
DOM_img.src = "http://www.somesite.com/pix/" + bPix + ".gif";
DOM_img.height = '27';
DOM_img.width = '19';
DOM_img.hspace = '1';
DOM_img.vspace = '5';
DOM_img.alt = bAlt;
// This is where I want to insert the HTML IMG Tag
}
我尝试了以下(以及更多)对各种类似问题的回答,似乎什么都不起作用
//nodex.insertBefore(DOM_img, nodex);
//nodex.parentNode.appendChild(DOM_img);
//nodex.parentNode.innerHTML = html_for_DOM_img;
//nodex.innerHTML = html_for_DOM_img;
如果我做
content.document.body.appendChild(DOM\u img)
可以工作,但是图像应该放在其他地方(我不想要) 这里有一个你还没试过的。。。()
nodex.parentNode.insertBefore(DOM\u img,nodex)代码>您可以试试这个
var oPara = document.getElementById( 'para' ),
oImg = document.createElement( 'img' ),
oTxt = document.createTextNode( 'Hello World!' );
oImg.setAttribute( 'src', 'sample.jpg' );
oPara.appendChild( oImg );
oPara.appendChild( oTxt );
这需要HTML元素p
或div
定义idpara
非常感谢您的回答-它工作得非常好。不过,更感谢你给我看这个网站。如果我早点知道那个网站,我本可以节省很多时间。谢谢,但正如我在示例中所示,我的
没有id
。看看上面佳能的答案。这是正确的方法。
var oPara = document.getElementById( 'para' ),
oImg = document.createElement( 'img' ),
oTxt = document.createTextNode( 'Hello World!' );
oImg.setAttribute( 'src', 'sample.jpg' );
oPara.appendChild( oImg );
oPara.appendChild( oTxt );