2011-08-14 29 views
1

我想插入一个换行符,并在新行中设置插入符的位置。如何使用execCommand设置新行?

我有这个

<!-- editable --> 
<div> 
    hello 
</div> 

然后我添加一个新行

document.execCommand("insertHtml", false, "world" + "<br> "); 

但插入符号不<br>后移,所以当我键入文本不走新线。

如何在新行中设置脱字符位置,以便在输入时将其删除?

实际结果:

helloworld<typedtext> 

预期结果:

helloworld 
<typedtext> 

Example on jsFiddle

测试在Chrome 15

+0

那的工作对我却没有在IE9中,http://jsfiddle.net/BhZzu/ –

+0

我在Chrome 15上 – BrunoLM

+0

它适用于Chrome Canary上的我。 – pimvdb

回答

2

只需添加一个换行符,它会在其移动铬 所以这样

document.execCommand("insertHtml", false, "world"); 
document.execCommand('insertParagraph',false); 

问一些事情被问前一段时间,但希望它可以帮助别人反正

1
document.execCommand('insertText', true, 'hi\\r\\nworld') 
+0

根据我的经验,最好在Chrome上至少将换行符作为'\ n'而不是'\ r \ n'来传递。 如果您需要插入空白行,'\ r \ n \ r \ n'将创建并清空

,但'\ r \ n \ r \ n'会创建

tombam