亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? scripttagproxy.js

?? ext js demo ext學習資料
?? JS
字號:
/*
 * Ext JS Library 1.1 RC 1
 * Copyright(c) 2006-2007, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://www.extjs.com/license
 */

/**
 * @class Ext.data.ScriptTagProxy
 * An implementation of Ext.data.DataProxy that reads a data object from a URL which may be in a domain
 * other than the originating domain of the running page.<br><br>
 * <p>
 * <em>Note that if you are retrieving data from a page that is in a domain that is NOT the same as the originating domain
 * of the running page, you must use this class, rather than DataProxy.</em><br><br>
 * <p>
 * The content passed back from a server resource requested by a ScriptTagProxy is executable JavaScript
 * source code that is used as the source inside a &lt;script> tag.<br><br>
 * <p>
 * In order for the browser to process the returned data, the server must wrap the data object
 * with a call to a callback function, the name of which is passed as a parameter by the ScriptTagProxy.
 * Below is a Java example for a servlet which returns data for either a ScriptTagProxy, or an HttpProxy
 * depending on whether the callback name was passed:
 * <p>
 * <pre><code>
boolean scriptTag = false;
String cb = request.getParameter("callback");
if (cb != null) {
    scriptTag = true;
    response.setContentType("text/javascript");
} else {
    response.setContentType("application/x-json");
}
Writer out = response.getWriter();
if (scriptTag) {
    out.write(cb + "(");
}
out.print(dataBlock.toJsonString());
if (scriptTag) {
    out.write(");");
}
</pre></code>
 *
 * @constructor
 * @param {Object} config A configuration object.
 */
Ext.data.ScriptTagProxy = function(config){
    Ext.data.ScriptTagProxy.superclass.constructor.call(this);
    Ext.apply(this, config);
    this.head = document.getElementsByTagName("head")[0];
};

Ext.data.ScriptTagProxy.TRANS_ID = 1000;

Ext.extend(Ext.data.ScriptTagProxy, Ext.data.DataProxy, {
    /**
     * @cfg {String} url The URL from which to request the data object.
     */
    /**
     * @cfg {Number} timeout (Optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.
     */
    timeout : 30000,
    /**
     * @cfg {String} callbackParam (Optional) The name of the parameter to pass to the server which tells
     * the server the name of the callback function set up by the load call to process the returned data object.
     * Defaults to "callback".<p>The server-side processing must read this parameter value, and generate
     * javascript output which calls this named function passing the data object as its only parameter.
     */
    callbackParam : "callback",
    /**
     *  @cfg {Boolean} nocache (Optional) Defaults to true. Disable cacheing by adding a unique parameter
     * name to the request.
     */
    nocache : true,

    /**
     * Load data from the configured URL, read the data object into
     * a block of Ext.data.Records using the passed Ext.data.DataReader implementation, and
     * process that block using the passed callback.
     * @param {Object} params An object containing properties which are to be used as HTTP parameters
     * for the request to the remote server.
     * @param {Ext.data.DataReader} reader The Reader object which converts the data
     * object into a block of Ext.data.Records.
     * @param {Function} callback The function into which to pass the block of Ext.data.Records.
     * The function must be passed <ul>
     * <li>The Record block object</li>
     * <li>The "arg" argument from the load function</li>
     * <li>A boolean success indicator</li>
     * </ul>
     * @param {Object} scope The scope in which to call the callback
     * @param {Object} arg An optional argument which is passed to the callback as its second parameter.
     */
    load : function(params, reader, callback, scope, arg){
        if(this.fireEvent("beforeload", this, params) !== false){

            var p = Ext.urlEncode(Ext.apply(params, this.extraParams));

            var url = this.url;
            url += (url.indexOf("?") != -1 ? "&" : "?") + p;
            if(this.nocache){
                url += "&_dc=" + (new Date().getTime());
            }
            var transId = ++Ext.data.ScriptTagProxy.TRANS_ID;
            var trans = {
                id : transId,
                cb : "stcCallback"+transId,
                scriptId : "stcScript"+transId,
                params : params,
                arg : arg,
                url : url,
                callback : callback,
                scope : scope,
                reader : reader
            };
            var conn = this;

            window[trans.cb] = function(o){
                conn.handleResponse(o, trans);
            };

            url += String.format("&{0}={1}", this.callbackParam, trans.cb);

            if(this.autoAbort !== false){
                this.abort();
            }

            trans.timeoutId = this.handleFailure.defer(this.timeout, this, [trans]);

            var script = document.createElement("script");
            script.setAttribute("src", url);
            script.setAttribute("type", "text/javascript");
            script.setAttribute("id", trans.scriptId);
            this.head.appendChild(script);

            this.trans = trans;
        }else{
            callback.call(scope||this, null, arg, false);
        }
    },

    // private
    isLoading : function(){
        return this.trans ? true : false;
    },

    /**
     * Abort the current server request.
     */
    abort : function(){
        if(this.isLoading()){
            this.destroyTrans(this.trans);
        }
    },

    // private
    destroyTrans : function(trans, isLoaded){
        this.head.removeChild(document.getElementById(trans.scriptId));
        clearTimeout(trans.timeoutId);
        if(isLoaded){
            window[trans.cb] = undefined;
            try{
                delete window[trans.cb];
            }catch(e){}
        }else{
            // if hasn't been loaded, wait for load to remove it to prevent script error
            window[trans.cb] = function(){
                window[trans.cb] = undefined;
                try{
                    delete window[trans.cb];
                }catch(e){}
            };
        }
    },

    // private
    handleResponse : function(o, trans){
        this.trans = false;
        this.destroyTrans(trans, true);
        var result;
        try {
            result = trans.reader.readRecords(o);
        }catch(e){
            this.fireEvent("loadexception", this, o, trans.arg, e);
            trans.callback.call(trans.scope||window, null, trans.arg, false);
            return;
        }
        this.fireEvent("load", this, o, trans.arg);
        trans.callback.call(trans.scope||window, result, trans.arg, true);
    },

    // private
    handleFailure : function(trans){
        this.trans = false;
        this.destroyTrans(trans, false);
        this.fireEvent("loadexception", this, null, trans.arg);
        trans.callback.call(trans.scope||window, null, trans.arg, false);
    }
});

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产美国国产综合一区二区| 偷窥国产亚洲免费视频| 亚洲国产成人高清精品| 国产一区二区看久久| 欧美日韩电影在线| 中文字幕中文乱码欧美一区二区| 亚洲成人三级小说| 91社区在线播放| 久久久久久久久久看片| 亚洲第一搞黄网站| av午夜一区麻豆| 久久精品一区二区三区不卡牛牛| 午夜亚洲国产au精品一区二区| 成人激情图片网| 国产色产综合色产在线视频| 婷婷久久综合九色国产成人| 91女人视频在线观看| 国产欧美在线观看一区| 麻豆极品一区二区三区| 7777精品久久久大香线蕉| 亚洲精品久久7777| 99久久99久久精品免费观看 | 久久精品日韩一区二区三区| 亚洲成人资源在线| 欧美视频日韩视频| 亚洲男人电影天堂| av成人动漫在线观看| 中文字幕乱码一区二区免费| 精品一区二区影视| 日韩精品中午字幕| 久久不见久久见免费视频1| 欧美日韩精品欧美日韩精品| 亚洲色图制服丝袜| 色综合中文字幕国产 | 一本高清dvd不卡在线观看| 国产午夜久久久久| 国产成人一级电影| 国产精品久久久久婷婷| 成人黄色av电影| 亚洲欧洲国产专区| 色成年激情久久综合| 一区二区三区欧美在线观看| 91国偷自产一区二区三区成为亚洲经典| 国产精品久久久久毛片软件| av电影在线观看一区| 亚洲欧洲韩国日本视频| 欧美亚洲动漫另类| 日韩av一级片| 久久先锋资源网| 国产 欧美在线| 亚洲欧美在线视频观看| 在线观看av一区二区| 亚洲超丰满肉感bbw| 日韩欧美一级二级三级| 国产伦精品一区二区三区免费迷| 欧美激情综合网| 在线一区二区三区四区五区| 午夜精品影院在线观看| 欧美精品一区二区三区在线播放 | 婷婷久久综合九色综合绿巨人| 日韩一区二区在线观看| 国产精品一二三四| 亚洲精品国产无套在线观| 欧美丰满嫩嫩电影| 国产成人一区二区精品非洲| 亚洲精品大片www| 在线播放91灌醉迷j高跟美女| 久久国产精品99久久人人澡| 国产精品美女久久久久久 | 亚洲一卡二卡三卡四卡无卡久久| 欧美精品高清视频| 北岛玲一区二区三区四区| 日韩黄色小视频| 国产欧美一区二区在线| 欧美日韩高清影院| www.亚洲精品| 激情深爱一区二区| 亚洲亚洲精品在线观看| 国产无人区一区二区三区| 欧美三区在线视频| 成人av第一页| 久久91精品久久久久久秒播| 一区在线中文字幕| 精品欧美黑人一区二区三区| 色综合久久综合网| 韩国精品久久久| 一区二区三区四区高清精品免费观看| 欧美视频一区二区三区在线观看 | 91视视频在线观看入口直接观看www | 一区二区三区在线观看动漫| 91麻豆精品国产综合久久久久久 | 日本高清视频一区二区| 国产精品一区不卡| 亚洲福利视频一区| 国产日韩欧美在线一区| 欧美体内she精高潮| 国产精品夜夜嗨| 午夜精品久久久久| 国产三级精品三级| www成人在线观看| 欧美探花视频资源| 成人亚洲一区二区一| 天天色综合天天| 亚洲日本青草视频在线怡红院| 欧美一三区三区四区免费在线看 | 成人综合在线观看| 免费一区二区视频| 怡红院av一区二区三区| 久久久欧美精品sm网站| 欧美精品日韩精品| 91麻豆精品秘密| 捆绑变态av一区二区三区| 日本女人一区二区三区| 一区二区在线免费| 国产精品久久久久久一区二区三区| 欧美一区二区三区成人| 欧美亚洲丝袜传媒另类| 一本大道av伊人久久综合| 国产a区久久久| 黄网站免费久久| 精品一区二区三区免费| 一级日本不卡的影视| 国产精品国产自产拍高清av王其 | 精品国产乱子伦一区| 欧美精品色综合| 69堂成人精品免费视频| 6080亚洲精品一区二区| 欧美日韩中字一区| 色噜噜狠狠成人中文综合| 99re成人精品视频| 91污在线观看| av高清不卡在线| 国产91综合网| 色天使久久综合网天天| 欧美性视频一区二区三区| 一本在线高清不卡dvd| 色综合久久精品| 欧美视频一区二区在线观看| 欧美日韩亚洲综合在线| 3751色影院一区二区三区| 3d动漫精品啪啪1区2区免费| 欧美一级免费大片| 日韩免费高清av| 久久伊人中文字幕| 亚洲国产精品成人久久综合一区| 日韩欧美国产综合一区| 精品剧情v国产在线观看在线| 精品蜜桃在线看| 欧美激情一区二区三区在线| 日韩一区在线播放| 亚洲一区二区三区在线| 日日夜夜免费精品| 精品一区二区三区香蕉蜜桃| 国产成人精品三级麻豆| 成人免费视频caoporn| 91激情在线视频| 这里只有精品99re| 日本一区二区三区电影| 亚洲欧美色一区| 日韩成人av影视| 精品一区二区三区免费观看| a级精品国产片在线观看| 日本丶国产丶欧美色综合| 正在播放一区二区| 国产精品污网站| 亚洲成人久久影院| 亚洲成av人综合在线观看| 成人免费av在线| 欧美日韩国产一级片| 国产亚洲综合av| 亚洲最新在线观看| 国产综合成人久久大片91| 福利视频网站一区二区三区| 欧美一区二区三区思思人| 国产精品乱人伦中文| 丝袜亚洲另类欧美| eeuss鲁片一区二区三区| 欧美一区二区三区在线视频| 亚洲精品视频一区| 国产在线日韩欧美| 欧美色综合久久| 国产欧美视频在线观看| 视频在线在亚洲| 六月丁香婷婷色狠狠久久| 666欧美在线视频| 亚洲色图欧美在线| 国产一区二区三区电影在线观看| 色婷婷av一区二区三区大白胸| 精品国产免费一区二区三区香蕉| 国产精品美女久久久久久| 国产一区高清在线| 欧美日韩精品一区二区天天拍小说 | 欧美军同video69gay| 2欧美一区二区三区在线观看视频| 日日欢夜夜爽一区| 色久优优欧美色久优优| 国产精品高清亚洲| 国产成人综合在线| 欧美一区二区成人6969| 日韩不卡一区二区三区|