我正在向documentFragment添加文本节点,如下所示:
var foo = document.createDocumentFragment();
var someText = "Hello World";
foo.appendChild(document.createTextNode(someText));
这很好用,但有时候我会被传递"文本",其中包含如下内联链接:
var someOtherText = "Hello <a href='www.world.com'>World</a>";
它在我的处理程序中被转换为硬编码文本而不是链接。
- 问题:**
如何将上面的HTML字符串附加到documentFragment中?如果我不使用textNodes
,可以使用appendChild
吗?
3条答案
按热度按时间luaexgnf1#
创建一个template-元素,添加带有
.innerHTML
的文本,并获得带有content
-属性的doumentFragment
:现在你可以从一个字符串创建一个
documentFragment
,甚至可以把一个documentFragment
附加到一个documentFragment
上:velaa5lx2#
它返回一个DocumentFragment。
支持IE〉= 9
最近的版本Safari似乎无法使用短方法,下面是稍微长一点但有效的方法:
t0ybt7op3#
这可能有效: