如何使用javascript丢失粘贴位置

时间:2012-06-21 15:23:02

标签: javascript copy-paste contenteditable epiceditor

我有一个令人满意的编辑器,我正在试图弄清楚如何正确地粘贴。我试过这么简单:

self.editorIframeDocument.addEventListener('paste', function () {
  setTimeout(function () {
    _setText(self.editor, _getText(self.editor));
  }, 1);
});

editorIframeDocument ==符合条件的document

_setText是一个内部函数,用于清除整个代码中使用的输入。

_getText只有innerText才可以,或者当它无法填充(Firefox)。

所以,问题是,粘贴光标后移动。例如:

+==========+
+ |
+ WORD
+
+===========

如果我在那里粘贴WORD(假装它是编辑器),光标会在你看到它上面的管道的地方结束。

如何始终将光标放在用户粘贴的 end 上,或者确保前一个光标位置。我看到我可以在extendOffset中使用Selection属性,但我不确定如何。我也尝试过collapseToEnd,但这会将光标放在整个编辑器的末尾。

有什么想法吗?如果您需要完整的源代码:https://github.com/OscarGodson/EpicEditor/blob/feature/ticket-100/src/editor.js

它在分支feature/ticket-100

0 个答案:

没有答案