【问题标题】:IE createRange().pasteHTML pastes to top of page if nothing is selected [duplicate]如果未选择任何内容,IE createRange().pasteHTML 将粘贴到页面顶部 [重复]
【发布时间】:2013-05-27 15:40:42
【问题描述】:

我试图让 IE 粘贴到内容可编辑 div 中的当前插入符号位置。如果您选择了一些文本,IE 会很好地粘贴,但如果您没有选择任何内容,它会将您的文本粘贴到页面顶部。有没有办法将它粘贴到插入符号位置而不是页面顶部?

<div id='ce' contenteditable='true'>select me...</div>
document.getElementById("insert").onclick = function() {
    document.selection.createRange().pasteHTML("-PASTED HTML-");
};

fiddle (remember, IE only)

【问题讨论】:

  • 我不确定它是否重复,但我找到了答案。 myTextArea.focus(); jsfiddle.net/Sx2Lt/4
  • 您应该将其发布为答案并接受您自己的答案。

标签: javascript internet-explorer


【解决方案1】:

答案原来是 .focus 在文本区域。实际场景使用 body 元素而不是 textarea,document.body.focus() 适用于这种情况。

这里是这个问题的固定小提琴:jsfiddle.net/Sx2Lt/4 (IE ONLY)

【讨论】:

    猜你喜欢
    • 2017-05-09
    • 2017-11-29
    • 2012-08-20
    • 2019-08-11
    • 1970-01-01
    • 1970-01-01
    • 2011-07-29
    • 2017-09-27
    • 2014-11-09
    相关资源
    最近更新 更多