第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

onMouseMove不退出或onMouseUp不起作用

onMouseMove不退出或onMouseUp不起作用

胡子哥哥 2019-04-26 14:15:49
我有一個(gè)svg矩形,其4個(gè)邊上有4個(gè)resizer,矩形和resizer都有onmousedown / onmousemove / onmouseup事件監(jiān)聽器。當(dāng)我從調(diào)整器調(diào)整矩形大小時(shí),當(dāng)我停止調(diào)整元素大小或者可能沒有觸發(fā)onmouseup時(shí),大小調(diào)整器的onmousemove不會(huì)停止。這是我的代碼:用于拖放的矩形事件:  onMouseDown = (e) => {       if ( this.state.isDraggable ) {         document.addEventListener('mousemove', this.onMouseMove);         this.coords = {           x: e.clientX,           y: e.clientY         }       }   }   onMouseUp = (e) => {     // this.props.updateStateDragging(this.props.id, false);     document.removeEventListener('mousemove', this.onMouseMove);     this.coords = {};   }   onMouseMove = (e) => {     const xDiff = this.coords.x - e.clientX;     const yDiff = this.coords.y - e.clientY;     this.coords.x = e.clientX;     this.coords.y = e.clientY;     this.setState({       x: this.state.x - xDiff,       y: this.state.y - yDiff,     });   }用于調(diào)整矩形大小的縮放器事件:  onMouseDown = (e) => {     document.addEventListener('mousemove', this.onMouseMove);     this.props.updateStateResizing(this.props.id, true);     this.props.updateStateDragging(this.props.id, false);   }   onMouseMove = (e) => {     if ( this.props.isResizing ){       this.props.nodeResizer(this.props.id, e.target, e.clientX, e.clientY);     }   }   onMouseUp = (e) => {     document.removeEventListener('mousemove', this.onMouseMove.bind(this));     if ( this.props.isResizing ){       this.props.updateStateResizing(this.props.id, false);     }   }我究竟做錯(cuò)了什么?怎么解決呢?
查看完整描述

4 回答

?
MDSN

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊

onclick 事件會(huì)在一次完整的鼠標(biāo)左鍵按下并松開之后觸發(fā), 一般 onmouseup 是先于 onclick 事件觸發(fā)。 但是鼠標(biāo)左鍵按下不松開,并移動(dòng)鼠標(biāo)之后松開鼠標(biāo)左鍵,結(jié)果是 onmouseup 并不會(huì)觸發(fā)。 利用 onclick 是在 onmouseup 之后觸發(fā)的特點(diǎn),用 onclick 替代 onmouseup
查看完整回答
反對(duì) 回復(fù) 2021-09-03
?
MDSN

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊

onclick 事件會(huì)在一次完整的鼠標(biāo)左鍵按下并松開之后觸發(fā), 一般 onmouseup 是先于 onclick 事件觸發(fā)。 但是鼠標(biāo)左鍵按下不松開,并移動(dòng)鼠標(biāo)之后松開鼠標(biāo)左鍵,結(jié)果是 onmouseup 并不會(huì)觸發(fā)。 利用 onclick 是在 onmouseup 之后觸發(fā)的特點(diǎn),用 onclick 替代 onmouseup
查看完整回答
反對(duì) 回復(fù) 2021-09-03
?
青春有我

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊

嘗試使用settimeout,無(wú)論您在何處使用document.removeEventListener,如:

setTimeout(() => {
  document.removeEventListener('mousemove', this.onMouseMove.bind(this));}, 500);


查看完整回答
反對(duì) 回復(fù) 2019-05-17
?
偶然的你

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊

刪除“mousemove”偵聽器的調(diào)用必須提供添加偵聽器時(shí)提供的相同功能對(duì)象。然而

this.onMouseMove

與功能對(duì)象不同

this.onMouseMove.bind(this)

嘗試.bind(this)onMouseUp代碼中刪除以開始。


技術(shù)說(shuō)明


重新綁定箭頭功能不會(huì)更改箭頭功能this看到的值。

箭頭函數(shù)始終使用在this定義它們時(shí)生效的詞法值。從句法bind上講,你可以調(diào)用一個(gè)箭頭函數(shù) - 它們是函數(shù)對(duì)象并從中繼承Function.prototype- 但是箭頭函數(shù)從不使用this提供的值bind。


查看完整回答
反對(duì) 回復(fù) 2019-05-17
  • 4 回答
  • 0 關(guān)注
  • 1284 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)