여러 개체 및 메서드 바인딩 시 플래그 및 jq

高洛峰
풀어 주다: 2017-02-28 15:58:32
원래의
1289명이 탐색했습니다.

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();
로그인 후 복사

== 이 두 개체는 완전히 똑같은 것처럼 보이지만 여전히 비교 결과를 기다리고 싶지 않습니다==

이 == e.target을 직접 비교하여 올바른 결과를 얻을 수 있습니다. result==

위 플래그는 jq on에 연결되어 있습니다. 여러 객체와 메서드를 정의하는 것은 편집자가 공유한 내용이 모두 참고할 수 있기를 바라며, 또한 모두가 그러하길 바랍니다. PHP 중국어 웹사이트를 지원합니다.

여러 개체 및 메서드 바인딩에 대한 플래그 및 jq와 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿