国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JQuery中模擬image的ajaxPrefilter與ajaxTransport處理

2019-11-20 12:12:57
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

//////////////////////////////////////////////////////////////////  // options 是請(qǐng)求的選項(xiàng)                        //  // originalOptions 值作為提供給Ajax方法未經(jīng)修改的選項(xiàng),因此,沒有ajaxSettings設(shè)置中的默認(rèn)值 //  // jqXHR 是請(qǐng)求的jqXHR對(duì)象                      //  //////////////////////////////////////////////////////////////////  $.ajaxPrefilter("image", function(options, originalOptions, jqXHR) {    //通過預(yù)處理器轉(zhuǎn)化類型    if (options.test) {      options.type = 'GET'    }    //增加前綴    options.url = "http://img.mukewang.com/" + options.url  });  ///////////////////////  // 請(qǐng)求分發(fā)器 transports //  ///////////////////////  $.ajaxTransport("image", function(s) {    if (s.type === "GET" && s.async) {      var image;      return {        send: function(_, callback) {          image = new Image();          function done(status) {            if (image) {              var statusText = (status == 200) ? "success" : "error",                tmp = image;              image = image.onreadystatechange = image.onerror = image.onload = null;              callback(status, statusText, {                image: tmp              });            }          }          image.onreadystatechange = image.onload = function() {            done(200);          };          image.onerror = function() {            done(404);          };          show(s.url)          image.src = s.url;        },        abort: function() {          if (image) {            image = image.onreadystatechange = image.onerror = image.onload = null;          }        }      };    }  });  $("#test").click(function(){     //執(zhí)行一個(gè)異步的HTTP(Ajax)的請(qǐng)求。    var ajax = $.ajax({      test   : true, //測(cè)試      url   : '547d5a45000156f406000338-590-330.jpg',      dataType : 'image',      type   : 'POST',      data: {        foo: ["bar1", "bar2"]      },      //這個(gè)對(duì)象用于設(shè)置Ajax相關(guān)回調(diào)函數(shù)的上下文      context: document.body,      //請(qǐng)求發(fā)送前的回調(diào)函數(shù),用來(lái)修改請(qǐng)求發(fā)送前jqXHR      beforeSend: function(xhr) {        xhr.overrideMimeType("text/plain; charset=x-user-defined");        show('局部事件beforeSend')      },      //請(qǐng)求完成后回調(diào)函數(shù) (請(qǐng)求success 和 error之后均調(diào)用)      complete: function() {        show('局部事件complete')      },      error: function() {        show('局部事件error請(qǐng)求失敗時(shí)調(diào)用此函數(shù)')      },      success: function() {        show('局部事件success')      }    })    ajax.done(function() {      show('done')    }).fail(function() {      show('fail')    }).always(function() {      show('always')    })

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 庄河市| 古田县| 安新县| 工布江达县| 沾化县| 临沧市| 宜州市| 涟水县| 伊通| 林州市| 潍坊市| 北安市| 乐平市| 积石山| 平定县| 扎兰屯市| 西城区| 弥勒县| 武川县| 宜黄县| 徐水县| 新邵县| 兰坪| 桂阳县| 文水县| 高碑店市| 沂源县| 上犹县| 兴安县| 聊城市| 阳信县| 五河县| 靖江市| 青田县| 榆树市| 琼海市| 六枝特区| 衡东县| 永川市| 临潭县| 乌什县|