Latest web development tutorials

jQuery.Callbacks () 메소드

jQuery를 기타 방법 jQuery를 기타 방법

$ .Callbacks 목록에 콜백 함수를 추가

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+의 값); 반환 거짓;} VAR 콜백 = $ 콜백 (); . 콜백 추가 ( 을 Fn1 ); // 출력 : foo는! 콜백. 화재 ( "푸!" ); 콜백 추가 ( Fn2를 !); // 출력 : 바, Fn2를 말한다 : 줄은! 콜백. 화재 ( "바!" );})

»시도

정의 및 사용

$ .Callbacks은 () 콜백 함수 열 권리를 관리 할 수있는 강력한 방법을 제공, 객체의 다목적 콜백리스트를 참조합니다.

팁 : 같은 아약스 내부 사용을위한 jQuery를에 $ .Callbacks, $ 이연 및 기타 구성 요소는 기본 기능에 대한 기능을 제공합니다. 또한, 자신의 플러그 - 인을 개발하는 등의 일부 구성 요소에 유사한 기능을 사용할 수있다.


문법

$.Callbacks( flags )

参数 描述
flags 可选。 String类型 一个用空格标记分隔的可选列表,用来改变回调列表中的行为


예

더 많은 예제

여기 .remove ()의 콜백 목록의 예에서 특정 콜백을 제거하는 방법

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+의 값); 반환 거짓;} VAR 콜백 = $ 콜백 (); . 콜백 추가 ( 을 Fn1 ); // 출력 : foo는! 콜백. 화재 ( "푸!" ); 콜백 추가 ( Fn2를 !); // 출력 : 바, Fn2를 말한다 : 줄은! 콜백. 화재 ( "바!" ); 콜백 (제거 Fn2를 ); // 출력은 foobar와, Fn2를 제거되었습니다. 콜백. 화재 ( "는 foobar" );})

»시도


지원 플래그 매개 변수

플래그 매개 변수는 공백으로 구분 플래그의 구조는 콜백리스트 행동 (예. $ .Callbacks ( '고유 stopOnFalse')를) 변경, 옵션 목록을 표시, $ .Callbacks ()는 선택적 매개 변수입니다.
다음은 사용 가능한 플래그입니다 :

参数 描述
once 确保这个回调列表只执行一次
memory 缓存上一次fire时的参数值,当add()添加回调函数时,直接用上一次的参数值立刻调用新加入的回调函数
unique 确保一次只能添加一个回调,不会重复添加
stopOnFalse 某个回调函数返回false之后中断后面的回调函数

여기에 예를 들어 $ .Callbacks는 ( "한 번")의이다

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+의 값); 반환 거짓;} VAR 콜백 = $. 콜백 ( "한 번" ); 콜백 추가 ( 을 Fn1 ); 콜백 화재 ( "푸" ); 콜백 추가 ( Fn2를 ); 콜백 화재 ( "바" ); 콜백 (제거 Fn2를 ); 콜백 화재 ( "는 foobar" ); / * 출력 전용 : foo는 * / })

»시도

여기에 예를 들어 $ .Callbacks ( "메모리")의이다

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+의 값); 반환 거짓;} VAR 콜백 = $. 콜백 ( "메모리" ); 콜백 추가 ( 을 Fn1 ); 콜백 화재 ( "푸" ); 콜백 추가 ( Fn2를 ); 콜백 화재 ( "바" ); 콜백 (제거 Fn2를 ); 콜백 화재 ( "는 foobar" ); / * 출력 : foo는 Fn2를 말한다 : foo는 바 Fn2를가 말한다 : 바는 foobar * / })

»시도

여기에 예를 들어 $ .Callbacks ( "고유은")의이다

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+의 값); 반환 거짓;} VAR 콜백 = $. 콜백 ( "독특한" ); 콜백 추가 ( 을 Fn1 ); 콜백 화재 ( "푸" ); 콜백 추가 ( 을 Fn1 ); // 반복 추가 콜백. 추가 ( Fn2를 ); 콜백 화재 ( "바" ); 콜백 (제거 Fn2를 ); 콜백 화재 ( "는 foobar" ); / * 출력 : foo는 바 Fn2를 말한다 : 바는 foobar * / })

»시도

여기에 예를 들어 $ .Callbacks ( "stopOnFalse은")의이다

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( ); 반환 거짓;} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+ 값 ); 반환 거짓;} VAR 콜백 = $. 콜백 ( "StopOnFalse" ); 콜백 추가 ( 을 Fn1 ); 콜백 화재 ( "푸" ); 콜백 추가 ( Fn2를 ); 콜백 화재 ( "바" ); 콜백 (제거 Fn2를 ); 콜백 화재 ( "는 foobar" ); / * 출력 : foo는 바는 foobar * / })

»시도

$ .Callbacks은 () 플래그의 복수 (식별), 같은 누적 효과, 하나가되지 목록을 지원합니다 "&&를."
여기에 예를 들어 $ .Callbacks ( '고유 메모리')의 인

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( ); 반환 거짓;} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+ 값 ); 반환 거짓;} VAR 콜백 = $. 콜백 ( "고유 메모리" ); 콜백 추가 ( 을 Fn1 ); 콜백 화재 ( "푸" ); 콜백 추가 ( 을 Fn1 ); // 반복 추가 콜백. 추가 ( Fn2를 ); 콜백 화재 ( "바" ); 콜백 추가 ( Fn2를 ); 콜백 화재 ( "바즈" ); 콜백 (제거 Fn2를 ); 콜백 화재 ( "는 foobar" ); / * 출력 : foo는 Fn2를 말한다 : foo는 바 Fn2를가 말한다 : 바 바즈의 Fn2를 말한다 : 바즈의는 foobar * / })

»시도

$ .Callbacks 방법은 예를 들어, 분리 될 수있다 :

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( );} VAR ... 콜백 = $ 콜백 ( ), (= 콜백 제거 = 콜백 제거, 화재 = 콜백 화재 ;. 추가를 추가 을 Fn1 ), 화재 ( "여보세요 세계" ) (제거 을 Fn1 ); / * 출력 : 안녕하세요 세계 * / })

»시도


$ .Callbacks, $ .Deferred 그리고 펍 / 하위

느슨한 결합하고 응용 프로그램을위한 효율적인 통신 뒤에 일반적인 생각 펍 / 서브 (옵저버 패턴). 관찰자는 관찰 된 오브젝트를 가리키는 가입자라고도. 관찰자 (출판사) 이벤트가 발생하면, 사용자에게 통지.

$ .Callbacks ()가 프리젠 테이션 구성 요소 만 콜백 함수 목록을 작성, 당신은 출판 / 서브 시스템을 달성 할 수있다. 큐와 같은 $ .Callbacks 기사를 게시하고 구독 문서를 달성하기 위해, 다음과 같은 방법으로 할 수있다 :

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( ); 반환 거짓;} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+ 값 ); 반환 거짓;} VAR 주제 = {} ;. jQuery를 주제 = 기능 ( 신분증 ) { VAR 콜백, 방법, 주제 = 아이디 && 주제 [ 신분증 ]하는 경우 (! 주제 ) { . 콜백 = jQuery를 콜백 (); 주제 = { 게시 : :. 가입, 콜백 화재 , 콜백 추가 :. 취소 콜백을 제거합니다. }; 경우 ( 신분증 ) { 주제 [ 신분증 ] = 주제;} } 반환 주제;}; // 가입자 $. 토픽 ( "MailArrived" ). (구독 을 Fn1 ); $ 토픽 ( "MailArrived" ). (구독 Fn2를 ); $ 토픽 ( "MailSent" ). (구독 을 Fn1 ); // 게시자 $. 토픽 ( "MailArrived" ). (게시 "안녕하세요 세계!" ); $ 토픽 ( "MailSent" ). (게시 "우! 메일!" ); / * 출력은 : 안녕하세요 세계 Fn2를 말한다 : 안녕하세요 세상이 메일 * 우 / !! })

»시도

또한 $ .Deferreds의 사용을 개선, 특정 작업이 완료 (또는 해결) 할 때, 게시자는 가입자에게 통지를 발행하도록 할 수 있습니다. 다음 예제 코드를 참조하십시오 :

$ (함수 () { 기능 을 Fn1 ( ) { 경고 ( ); 반환 거짓;} 기능 Fn2를 ( ) { 을 Fn1 ( "Fn2를 말한다 :"+ 값 ); 반환 거짓;} VAR 주제 = {} ;. jQuery를 주제 = 기능 ( 신분증 ) { VAR 콜백, 방법, 주제 = 아이디 && 주제 [ 신분증 ]하는 경우 (! 주제 ) { . 콜백 = jQuery를 콜백 (); 주제 = { 게시 : :. 가입, 콜백 화재 , 콜백 추가 :. 취소 콜백을 제거합니다. }; 경우 ( 신분증 ) { 주제 [ 신분증 ] = 주제;} } 반환 주제;}; // mailArrived 통지를 구독 $. 토픽 ( "MailArrived" ). (구독 을 Fn1 ); // 새로운 객체 대안 지연 $ .Deferreds 만들기 VAR . DFD = $ ()는 이연; //이 새로운 기사를 정의 (직접적 해제) VAR 주제 = $. 토픽 ( "MailArrived" ) // 지연이 허용되는 경우, 가입자에게 공지 DFD. 완료 ( 항목을 참조하십시오. 게시 ); / * 여기서 다시 가입자의 메시지 지연 전달 될 수락, 단지 메시지 일단 해제 사실 그래서) 완료 Ajax 호출 대기 (예를 들어, 복잡한 절차를 통합 할 수있다. * / // 완료. DFD. 해결 ( "나는이 출시되었습니다!" );})

»시도


jQuery를 기타 방법 jQuery를 기타 방법