您好,登錄后才能下訂單哦!
jquery中函數里的$(this)為什么和$(e.target)不相等?
//html中有個按鈕: <button id="myBtn">我的按鈕</button> <script> $('#myBtn').click(function(e){ console.log($(this)); console.log($(e.target)); console.log($(this)==$(e.target)); }); </script>
//發現$(this)和$(e.target)
//在控制臺打印的內容一模一樣
//但是,兩者就是不相等
因為用了jq來構造兩個對象,所以你最后一步比較的時候, 哪怕是兩個對象的內容一模一樣,結果也是不想等的,對象的比較比較的是指針,兩個指針不一樣所以是不想等的,簡單的說就是
var a = new Object(); var b = new Object();
==這兩個對象看起來是一模一樣的吧,但是比較結果依然不想等==
直接比較 this == e.target 這樣才能得出正確的結果==
以上這篇flag和jq on 的綁定多個對象和方法(必看)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。