Javascript 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

在父元素上,我试图处理鼠标和键盘事件onMouseUp事件返回触发事件的子元素,而onKeyUp返回父元素

这是我的密码:

<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。