【发布时间】:2020-04-09 20:55:21
【问题描述】:
我正在尝试在我的 react 项目中创建简单的所见即所得编辑器,但无法正常工作 document.execCommand,
我指的是codepen(他们在这里使用jQuery库来实现点击功能)
是否可以在 reactjs 中创建简单的所见即所得编辑器?
//document.addEventListener("click", function (e) {});
const wrapTag = (role) => {
switch(role) {
case 'h1':
case 'h2':
case 'p':
document.execCommand('formatBlock', false, role);
break;
default:
document.execCommand(role, false, null);
break;
}
}
<div onClick={ () => { wrapTag("bold") } }>bold</div>
<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Eveniet saepe nostrum aspernatur deserunt rem neque ab.</p>
【问题讨论】:
-
问题在于单击时您失去焦点并将焦点放在按钮上。
-
我尝试使用纯 javascript click document.addEventListener("click", function (e) {});但不是运气,你能告诉我代码兄弟吗? @epascarello
标签: javascript reactjs wysiwyg