2

我有一个可编辑的编辑器,我正试图弄清楚如何让粘贴正常工作。我尝试了简单的:

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

editorIframeDocument== 内容可编辑document

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

_getText只是innerText当它可以时,或者当它不能时(Firefox)。

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

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

如果我粘贴WORD到那里(假装它是编辑器),光标会出现在您看到它上方的管道的位置。

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

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

它在分行feature/ticket-100

4

0 回答 0