从普通的Javascript替换Draft.js中的单词

时间:2017-02-22 16:25:57

标签: javascript facebook reactjs draftjs

我正在构建一个Chrome扩展程序,可以纠正用户的问题。分型。校正后,在输入字段中更改校正后的字。该代码目前适用于textareas和contenteditables,但我遇到了Draft.js的问题,比如Facebook的主要帖子字段"你的想法是什么":改变了当用户将焦点设置回输入字段时,将恢复部分。

使用Draft.js编辑器在任何页面中运行以下代码段将更改第一行的文本,然后设置回焦点。发生这种情况时,草稿会恢复更改的内容。

document.querySelector('[data-text=true]').innerHTML='replacement';
setTimeout(function(){
  document.querySelector('[contenteditable=true]').focus();
},1000);

JsFiddle示例: https://jsfiddle.net/m6z0xn4r/161/

我想找到一个解决方案,在将焦点设置回输入字段后,更改的文本将保留在那里。

我正在寻找一种非侵入性的方式来使文字保持编辑状态。我尝试在文本字段上触发事件,但没有任何效果。我觉得使用javascript textselection / range操作可能是一个好方法,但到目前为止还没有运气。

感谢任何帮助!

0 个答案:

没有答案