国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

directory search
速查表 核心 jQuery(selector jQuery(html jQuery(callback) each(callback) size() length selector context get([index]) index([selector|element]) data([key] removeData([name|list]) jQuery.data(element queue(element dequeue([queueName]) clearQueue([queueName]) jQuery.noConflict([extreme]) 選擇器 #id element .class * selector1 ancestor descendant parent > child prev + next prev ~ siblings :first :last :not(selector) :even :odd :eq(index) :gt(index) :lt(index) :header :animated :focus :contains(text) :empty :has(selector) :parent :hidden :visible [attribute] [attribute=value] [attribute!=value] [attribute^=value] [attribute$=value] [attribute*=value] [selector1][selector2][selectorN] :nth-child :first-child :last-child :only-child :input :text :password :radio :checkbox :submit :image :reset :button :file :hidden :enabled :disabled :checked :selected 屬性 attr(name|pro|key removeAttr(name) prop(name|pro|key removeProp(name) addClass(class|fn) removeClass([class|fn]) toggleClass(class|fn[ html([val|fn]) text([val|fn]) val([val|fn|arr]) 篩選 eq(index|-index) first() last() hasClass(class) filter(expr|obj|ele|fn) is(expr|obj|ele|fn) map(callback) has(expr|ele) not(expr|ele|fn) slice(start children([expr]) closest(expr find(expr|obj|ele) next([expr]) nextAll([expr]) nextUntil([exp|ele][ parent([expr]) parents([expr]) parentsUntil([exp|ele][ prev([expr]) prevAll([expr]) prevUntil([exp|ele][ siblings([expr]) add(expr|ele|html|obj[ andSelf() contents() end() 文檔處理 append(content|fn) appendTo(content) prepend(content|fn) prependTo(content) after(content|fn) before(content|fn) insertAfter(content) insertBefore(content) wrap(html|ele|fn) unwrap() wrapAll(html|ele) wrapInner(html|ele|fn) replaceWith(content|fn) replaceAll(selector) empty() remove([expr]) detach([expr]) clone([Even[ CSS css(name|pro|[ offset([coordinates]) position() scrollTop([val]) scrollLeft([val]) height([val|fn]) width([val|fn]) innerHeight() innerWidth() outerHeight([options]) outerWidth([options]) 事件 ready(fn) on(events off(events bind(type one(type trigger(type triggerHandler(type unbind(type live(type die(type delegate(sel undelegate([sel hover([over toggle(fn blur([[data] change([[data] click([[data] dblclick([[data] error([[data] focus([[data] focusin([data] focusout([data] keydown([[data] keypress([[data] keyup([[data] mousedown([[data] mouseenter([[data] mouseleave([[data] mousemove([[data] mouseout([[data] mouseover([[data] mouseup([[data] resize([[data] scroll([[data] select([[data] submit([[data] unload([[data] 效果 show([speed hide([speed toggle([speed] slideDown([speed] slideUp([speed slideToggle([speed] fadeIn([speed] fadeOut([speed] fadeTo([[speed] fadeToggle([speed animate(param stop([cle] delay(duration jQuery.fx.off jQuery.fx.interval Ajax jQuery.ajax(url load(url jQuery.get(url jQuery.getJSON(url jQuery.getScript(url jQuery.post(url ajaxComplete(callback) ajaxError(callback) ajaxSend(callback) ajaxStart(callback) ajaxStop(callback) ajaxSuccess(callback) jQuery.ajaxSetup([options]) serialize() serializeArray() 工具 jQuery.support jQuery.browser jQuery.browser.version jQuery.boxModel jQuery.each(object jQuery.extend([deep] jQuery.grep(array jQuery.makeArray(obj) jQuery.map(array jQuery.inArray(val jQuery.toArray() jQuery.merge(first jQuery.unique(array) jQuery.parseJSON(json) jQuery.noop jQuery.proxy(function jQuery.contains(container jQuery.isArray(obj) jQuery.isFunction(obj) jQuery.isEmptyObject(obj) jQuery.isPlainObject(obj) jQuery.isWindow(obj) jQuery.isNumeric(value) jQuery.type(obj) jQuery.trim(str) jQuery.param(obj jQuery.error(message) Deferred def.done(donCal def.fail(failCal) def.isRejected() def.isResolved() def.reject(args) def.rejectWith(context def.resolve(args) def.resolveWith(context def.then(doneCal def.progress([type] def.pipe([donFil] def.always(alwCal def.notify(args) def.notifyWith(context def.progress(proCal) def.state() Callbacks callbacks.add(callbacks) callbacks.disable() callbacks.empty() callbacks.fire(arguments) callbacks.fired() callbacks.fireWith([context][ callbacks.has(callback) callbacks.lock() callbacks.locked() callbacks.remove(callbacks) jQuery.callbacks(flags) 關(guān)于 關(guān)于jQuery API 文檔 提交bug及獲取更新 其它 regexp
characters

返回值:jQueryjQuery.callbacks(flags)

概述

一個(gè)多用途的回調(diào)列表對象,提供了強(qiáng)大的的方式來管理回調(diào)函數(shù)列表。

$.Callbacks()的內(nèi)部提供了jQuery的$.ajax()?和?$.Deferred()?基本功能組件。它可以用來作為類似基礎(chǔ)定義的新組件的功能。

$.Callbacks()?支持的方法,包括?callbacks.add(),callbacks.remove(),?callbacks.fire()?and?callbacks.disable().

參數(shù)

flagsV1.7

一個(gè)用空格標(biāo)記分隔的標(biāo)志可選列表,用來改變回調(diào)列表中的行為

示例

入門描述:

以下是兩個(gè)樣品的方法命名fn1?and?fn2:

jQuery 代碼:
function fn1( value ){
    console.log( value );
}

function fn2( value ){
    fn1("fn2 says:" + value);
    return false;
}

這些可以添加為回調(diào)函數(shù)作為一個(gè)$.Callbacks的列表,并調(diào)用如下:

var callbacks = $.Callbacks();
callbacks.add( fn1 );
callbacks.fire( "foo!" ); // outputs: foo!

callbacks.add( fn2 );
callbacks.fire( "bar!" ); // outputs: bar!, fn2 says: bar!

這樣做的結(jié)果是,它使構(gòu)造復(fù)雜的回調(diào)列表變得簡單,輸入值可以通過盡可能多的函數(shù)根據(jù)需要輕松使用。

用于以上的兩個(gè)具體的方法:?.add()?和?.fire()?.add() 支持添加新的回調(diào)回調(diào)列表, 而.fire()?提供了一種用于處理在同一列表中的回調(diào)方法的途徑.

另一種方法由$.Callbacks?的remove(),用于從回調(diào)列表中刪除一個(gè)特定的回調(diào)。下面是.remove() 使用的一個(gè)例子:

var callbacks = $.Callbacks();
callbacks.add( fn1 );
callbacks.fire( "foo!" ); // outputs: foo!

callbacks.add( fn2 );
callbacks.fire( "bar!" ); // outputs: bar!, fn2 says: bar!

callbacks.remove(fn2);
callbacks.fire( "foobar" ); 

// only outputs foobar, as fn2 has been removed.

支持的 Flags描述:

這個(gè) flags 參數(shù)是$.Callbacks()的一個(gè)可選參數(shù), 結(jié)構(gòu)為一個(gè)用空格標(biāo)記分隔的標(biāo)志可選列表,用來改變回調(diào)列表中的行為 (比如. $.Callbacks( 'unique stopOnFalse' )).

?

可用的 flags:

  • once: 確保這個(gè)回調(diào)列表只執(zhí)行一次(像一個(gè)遞延 Deferred).
  • memory: 保持以前的值和將添加到這個(gè)列表的后面的最新的值立即執(zhí)行調(diào)用任何回調(diào) (像一個(gè)遞延 Deferred).
  • unique: 確保一次只能添加一個(gè)回調(diào)(所以有沒有在列表中的重復(fù)).
  • stopOnFalse: 當(dāng)一個(gè)回調(diào)返回false 時(shí)中斷調(diào)用

默認(rèn)情況下,回調(diào)列表將像事件的回調(diào)列表中可以多次觸發(fā)。

如何在理想情況下應(yīng)該使用的flags的例子,見下文:

?

$.Callbacks( 'once' ):

var callbacks = $.Callbacks( "once" );
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );

?

$.Callbacks( 'memory' ):

var callbacks = $.Callbacks( "memory" );
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );

?

$.Callbacks( 'unique' ):

var callbacks = $.Callbacks( "unique" );
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn1 ); // repeat addition
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );

/code>

?

$.Callbacks( 'stopOnFalse' ):

function fn1( value ){
    console.log( value );
    return false;
}

function fn2( value ){
    fn1("fn2 says:" + value);
    return false;
}

var callbacks = $.Callbacks( "stopOnFalse");
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );

因?yàn)?.Callbacks() 支持一個(gè)列表的flags而不僅僅是一個(gè),設(shè)置幾個(gè)flags,有一個(gè)累積效應(yīng),類似“&&”。這意味著它可能結(jié)合創(chuàng)建回調(diào)名單,unique?和確保如果名單已經(jīng)觸發(fā),將有更多的回調(diào)調(diào)用最新的觸發(fā)值?(i.e.$.Callbacks("unique memory")).

?

$.Callbacks( 'unique memory' ):

function fn1( value ){
    console.log( value );
    return false;
}

function fn2( value ){
    fn1("fn2 says:" + value);
    return false;
}
    
var callbacks = $.Callbacks( "unique memory" );
callbacks.add( fn1 );
callbacks.fire( "foo" );
callbacks.add( fn1 ); // repeat addition
callbacks.add( fn2 );
callbacks.fire( "bar" );
callbacks.add( fn2 );
callbacks.fire( "baz" );
callbacks.remove( fn2 );
callbacks.fire( "foobar" );

Flag結(jié)合體是使用的$.Callbacks()內(nèi)部的.done()?和?.fail()一個(gè)遞延容器-它們都使用?$.Callbacks('memory once').

$.Callbacks 方法也可以被分離, 為方便起見應(yīng)該有一個(gè)需要定義簡寫版本:

var callbacks = $.Callbacks(),
    add = callbacks.add,
    remove = callbacks.remove,
    fire = callbacks.fire;

add( fn1 );
fire( "hello world");
remove( fn1 );

$.Callbacks, $.Deferred and Pub/Sub

pub / sub( Observer模式)背后的一般思路 是促進(jìn)應(yīng)用程序的松散耦合。而比對其他對象的方法調(diào)用的單個(gè)對象,一個(gè)對象,而不是另一個(gè)對象的一個(gè)特定的任務(wù)或活動,并通知當(dāng)它發(fā)生。觀察家也被稱為訂閱者,我們指的出版商(或主體)觀察對象。出版商事件發(fā)生時(shí)通知用戶

作為一個(gè)組件$.Callbacks()創(chuàng)造能力,它可以實(shí)現(xiàn)一個(gè)pub / sub系統(tǒng)只使用回調(diào)列表。使用$.Callbacks作為主題隊(duì)列,發(fā)布和訂閱的主題系統(tǒng)可以實(shí)現(xiàn)如下:

var topics = {};

jQuery.Topic = function( id ) {
    var callbacks,
        method,
        topic = id && topics[ id ];
    if ( !topic ) {
        callbacks = jQuery.Callbacks();
        topic = {
            publish: callbacks.fire,
            subscribe: callbacks.add,
            unsubscribe: callbacks.remove
        };
        if ( id ) {
            topics[ id ] = topic;
        }
    }
    return topic;
};

然后,可以很容易的使用這部分應(yīng)用程序的發(fā)布和訂閱感興趣的事件:

// Subscribers
$.Topic( "mailArrived" ).subscribe( fn1 );
$.Topic( "mailArrived" ).subscribe( fn2 );
$.Topic( "mailSent" ).subscribe( fn1 );

// Publisher
$.Topic( "mailArrived" ).publish( "hello world!" );
$.Topic( "mailSent" ).publish( "woo! mail!" );

// Here, "hello world!" gets pushed to fn1 and fn2
// when the "mailArrived" notification is published
// with "woo! mail!" also being pushed to fn1 when
// the "mailSent" notification is published. 

雖然這是有用的,可以采取進(jìn)一步的實(shí)施。使用$.Deferreds,這是可能的,以確保發(fā)表者只為用戶發(fā)布一次特別的任務(wù)已經(jīng)完成(解決)通知。這可能是如何在實(shí)踐中使用的一些進(jìn)一步的評論,請參見下面的代碼示例:

// subscribe to the mailArrived notification
$.Topic( "mailArrived" ).subscribe( fn1 );

// create a new instance of Deferreds
var dfd = $.Deferred();

// define a new topic (without directly publishing)
var topic = $.Topic( "mailArrived" );

// when the deferred has been resolved, publish a 
// notification to subscribers
dfd.done( topic.publish );

// Here the Deferred is being resolved with a message
// that will be passed back to subscribers. It's possible to
// easily integrate this into a more complex routine
// (eg. waiting on an ajax call to complete) so that
// messages are only published once the task has actually
// finished.
dfd.resolve( "its been published!" );
Previous article: Next article: