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
定义id
para

非常感谢您的回答-它工作得非常好。不过,更感谢你给我看这个网站。如果我早点知道那个网站,我本可以节省很多时间。谢谢,但正如我在示例中所示,我的
没有
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 );