Javascript onMouseUp和onKeyUp返回不同的元素
在父元素上,我试图处理鼠标和键盘事件onMouseUp事件返回触发事件的子元素,而onKeyUp返回父元素 这是我的密码:Javascript onMouseUp和onKeyUp返回不同的元素,javascript,reactjs,Javascript,Reactjs,在父元素上,我试图处理鼠标和键盘事件onMouseUp事件返回触发事件的子元素,而onKeyUp返回父元素 这是我的密码: <div className={s.editorDesc} tabIndex="1" contentEditable="true" suppressContentEditableWarning="true" ref={(input) => { this.editorDesc = input; }} onMous
<div className={s.editorDesc} tabIndex="1" contentEditable="true" suppressContentEditableWarning="true" ref={(input) => {
this.editorDesc = input;
}} onMouseUp={(e) => {
console.log(e.target);
// this.showControls(e);
}} onKeyUp={(e) => {
if (e.key === "ArrowRight" || e.key === "ArrowLeft") {
console.log(e.target);
// this.showControls(e);
}
}}>
{this.state.controls}
<div>
<p>Description of Article</p>
</div>
</div>
{
this.editorDesc=输入;
}}onMouseUp={(e)=>{
console.log(如target);
//本条第(e)款;
}}onKeyUp={(e)=>{
如果(e.key==“ArrowRight”| | e.key===“ArrowLeft”){
console.log(如target);
//本条第(e)款;
}
}}>
{this.state.controls}
物品说明
onMouseUp正在记录p,而onKeyUp正在记录div。我想知道这种行为背后的原因,以及在发生onKeyUp事件时如何访问触发事件的子元素
这是一把小提琴:
类Hello扩展了React.Component{
render(){
返回{
this.editorDesc=输入;
}}onMouseUp={(e)=>{
console.log(如target);
//本条第(e)款;
}}onKeyUp={(e)=>{
如果(e.key==“ArrowRight”| | e.key===“ArrowLeft”){
console.log(如target);
//本条第(e)款;
}
}}>
物品说明
;
}
}
ReactDOM.render(
,
document.getElementById('容器')
);代码>
你能贴一把工作用的小提琴或其他东西吗?附上小提琴。是否与contentEditable=“true”
一致?HeonMouseUp触发p,因为您的鼠标直接位于p的顶部。。但由于onKeyUp是一个键盘输入,e.target将触发div,因为该事件是针对div启动的。。至于获取p子级的替代方法,您可以使用jQuery的$(event.target).children('p')。。。希望这个帮助我想要访问一直触发事件的子对象非特定p。