在我的网站中,我使用React Js创建了一个div元素,并且它也是可编辑的。如果用户编辑内容,它将触发onInput功能。
r.createElement("div", {
dangerouslySetInnerHTML: {
__html: e
},
dir: "auto",
ref: "input",
spellCheck: this.props.spellCheck,
"data-tab": this.props.editable ? 1 : null ,
contentEditable: this.props.editable,
className: t,
onInput: this.onInput,
onPaste: this.onPaste,
onCut: this.onCut,
onKeyUp: this.onKeyUp,
onKeyPress: this.onKeyPress,
onMouseDown: this.onMouseDown,
onContextMenu: this.onContextMenu,
onFocus: this.props.onFocus,
onBlur: this.props.onBlur
}
我正在尝试从客户端Chrome浏览器控制台为该元素设置内容,而不是触发 onInput 事件。
我的问题是有一种方法可以为元素添加输入动态和调用onInput事件。
答案 0 :(得分:4)
您可以从控制台发送事件
1.通过querySelector ..找到dom节点,或者在“Elements”选项卡中选择元素并使用$ 0;
const input = document.querySelector('[contentEditable]');
2.创建活动
const eventX = new Event('input', {bubbles: true});
3.改变价值
input.textContent = "TEST";
4.dispatch事件
input.dispatchEvent(eventX)
<强> jsfiddle DEMO test 强>