2011-06-07 38 views
0

考虑下面的代码片段:一个createTextNode没有ヶ辆

var t = "<span>Hello world</span>"; 
var range = window.getSelection().getRangeAt(0); 
range.deleteContents(); 
range.insertNode(document.createTextNode(t)); 

我怎样才能避免与ヶ辆更换t

回答

1

通过不创建文本节点。请使用range.pasteHTML

+0

是'pasteHTML' IE-only?文档看起来很轻.. – Emmett 2011-06-07 14:37:49

+0

谢谢!它在Firefox中不起作用,但我发现这个功能可以完成这项工作:http://groups.google.com/group/google-ajax-discuss/browse_thread/thread/80005bae70a63481/61d3f7c99ff6bd31 – Helge 2011-06-07 14:40:36

0

请勿使用文本节点。

var t = document.createElement('span'); 
t.textContent = 'Hello world'; 
var range = window.getSelection().getRangeAt(0); 
range.deleteContents(); 
range.insertNode(t);