> 웹 프론트엔드 > JS 튜토리얼 > jQuery의 $.proxy() 애플리케이션 예제 소개_jquery

jQuery의 $.proxy() 애플리케이션 예제 소개_jquery

WBOY
풀어 주다: 2016-05-16 16:53:24
원래의
1098명이 탐색했습니다.

오늘 <>를 보다가 Proxy()의 사용법을 봤는데 너무 막연한 느낌이라 여기저기서 정보를 찾아봤습니다.

jQuery의 $.proxy() 애플리케이션 예제 소개_jquery

jQuery의 소스 코드도 이해가 되지 않습니다.

근데 프록시의 사용법은 드디어 이해가 되었습니다.

코드를 복사하세요. 코드는 다음과 같습니다.



코드 복사 코드는 다음과 같습니다.

var obj = {
name: "나는 obj의 이름입니다.",
sayName: function () {
alert(this.name)
}
}
$(" #guoBtn").click(obj.sayName); //나는 버튼의 이름이다
// obj의 이름에 접근하고 싶다면 어떻게 해야 할까?
$("#guoBtn").click($. proxy(obj.sayName,obj));//"나는 obj의 이름입니다"
$("#guoBtn").click($.proxy(obj, "sayName")) //"나는 obj의 이름입니다 "

위에서 프록시(a,b)를 보면 매개변수를 작성하는 두 가지 방법이 있음을 알 수 있습니다.

첫 번째 방법: a는 함수 함수이고 b는

두 번째 방법: a는 객체이고, b는 문자열이며,

이 예는 < >
코드 복사 코드는 다음과 같습니다.

< ;div id="panel" style="display:none;">
<버튼>닫기


코드 복사 코드는 다음과 같습니다.
$("#panel").fadeIn(function () {
$("#panel 버튼").click(function () {
$( this).fadeOut();
})


버튼은 사라져도 패널은 사라지지 않습니다.


$("#panel").fadeIn(function ( ) {
var obj = this;
$("#panel 버튼").click($ .proxy(function () {
$(this).fadeOut();
}, obj ))
})


패널은 클릭한 후에만 사라집니다.

개인적으로 프록시는 함수 실행 시 컨텍스트 객체를 수정하는 데 주로 사용된다고 생각합니다.

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