/* 336x280*/
定义全局回调函数,把 timestamp 参数写成 window 下的方法名称。这里我的格式是 jsonp + 时间戳。发送请求和执行回调函数统一使用同一个 timestamp 参数即可。
/**
* 远程数据加载
* @method loader
* @param {String} o 参数配置
*/
function loader (o) {
var timestamp = 'jsonp' + new Date().getTime();
//定义全局回调函数
window[timestamp] = function (data) {
//执行配置参数中的回调函数
o.callback(data);
}
//读取远程 JSONP 数据
KISSY.getScript(o.url + timestamp);
}
执行加载时,调用 loader 方法:
loader({
url : 'http://ooxx.html?callback=',
callback : function (data) {
console.log(data);
}
})
2011.12.15 日补充:全局 window 上的 callback 在请求成功后需要进行一次销毁操作。
/* 336x280*/
版权所有,转载请注明出处。
转载自 <a href="http://www.mangguo.org/a-brief-paragraph-on-jsonp-callback-code/" title="一段关于 JSONP Callback 的简要代码" rel="bookmark">一段关于 JSONP Callback 的简要代码 | 芒果小站</a>
我简单说几句