亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js中e.target跟this不相等嗎?

js中e.target跟this不相等嗎?

楊__羊羊 2018-10-10 09:18:57
剛寫一個點擊事件用$(this)不行,換成$(e.target)就可以了,所以這兩個不一樣嗎?有什么區別呢?
查看完整描述

1 回答

?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

1.event.target與this的區別
event.target表示發生點擊事件的元素;
this表示的是注冊點擊事件的元素
this 等于 e.currentTarget 
this是所有函數原生具有的.進入函數時,this已經直接有了目標對象.
而e.target通過e再尋找target,中轉了一下。所以相比較而言,this的執行效率更高些。
2 $(this.target)與$(this)比較的問題
有人會問為什么$(this.target)!=$(this)?
因為你用了jq來構造兩個對象, 所以你最后一步比較的時候, 哪怕是兩個對象的內容一模一樣, 結果也是不想等的, 對象的比較比較的是指針, 兩個指針
不一樣所以是不想等的, 簡單的說就是
var a = new Object();
var b = new Object();// 這兩個對象看起來是一模一樣的吧, 但是比較結果依然不想等
你直接比較 this == e.target 這樣才能得出正確的結果

查看完整回答
反對 回復 2018-11-03
  • 1 回答
  • 0 關注
  • 871 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號