【发布时间】:2014-04-21 17:44:38
【问题描述】:
现在我不是在谈论创建子节点或子节点,我的字面意思是 HTML。这就是我想做的:
我有一个基本节点,例如:
<div id="foo"></div>
我有一个 HTML 字符串,我想在那个元素之前附加(有点像 innerHTML 所做的,不同的是,我显然是把它放在前面,而不是里面),例如:
"<span>hello, world</span><div></div>Foo<img src="logo.png" />Bar"
现在我想在 div 之前插入那个 HTML,所以我的结果是:
<span>hello, world</span><div></div>Foo<img src="logo.png" />Bar<div id="foo"></div>
有什么方法可以在 JavaScript 中做到这一点(没有任何库)?谢谢!
【问题讨论】:
-
您可以在没有任何库的情况下执行此操作,但这会非常棘手,包括最后的文本节点。为什么你不使用 jQuery(并将整个东西包装在一个元素中)?
-
@MinkoGechev:如果他要将整个东西包装在一个元素中,那将变得非常容易,根本不需要 jQuery。无论如何,这并不难。
-
获取父节点的
innerHTML,将其连接到这个新的HTML,然后将其存储为innerHTML。 -
@T.J.Crowder 是的,同意。
-
@Barmar: ...这会清除您在现有元素上可能拥有的任何事件处理程序。
标签: javascript html dynamic nodes innerhtml