getJSON 简单实现

2013 - 5 - 27 作者 : Jimco 分类 : JavaScript

    一个多月没发东西,自个儿都看不下去了,水文一篇。

    对于跨域的解决方案有很多,前不久在玉伯那儿还看到 seajs 的一个跨域实现方案,就一个字“赞”!感兴趣的童鞋请戳:https://github.com/kerryChen95/blog/issues/6

    今天我主要是介绍一下工作中常用的 jsonp 跨域实现(其实也就是贴个代码,然后闪人,干活去!兄弟们不要扇我~):

(function(window, undefined){
  
  XY = window.XY || {};

  XY.getJSON = function(url, params, callback){
    var paramsUrl = ''
      , jsonp = 'callback' + new Date().getTime();
    for(var key in params){
      paramsUrl += "&" + key + "=" + encodeURIComponent(params[key]);
    }
    url += paramsUrl + '&callback=' + jsonp;
    window[jsonp] = function(data){
      window[jsonp] = undefined;
      try{
        delete window[jsonp];
      }catch(e){}

      if(head){
        head.removeChild(script);
      }
      callback(data);
    };

    var head = document.getElementsByTagName('head')[0];
    var script = document.createElement('script');
    script.charset = "UTF-8";
    script.src = url;
    head.appendChild(script);
    return true;
  }

})(window);

10451 人围观 / 3 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18

Powered by Jimco

©2013 前端那些事儿 Designed by Jimco

About me|意见反馈