// 利用script标签没有跨域限制,通过src指向一个ajax的URL,最后跟一个回调函数callback
var jsonp = function (url, data, callback) {
var cbName = 'callback_' + new Date().getTime();
var queryString = url.indexOf('?') == -1 ? '?' : '&';
for (var k in data) {
queryString += k + '=' + data[k] + '&';
}
queryString += 'callback=' + cbName;
var script = document.createElement('script');
script.src = url + queryString;
window[cbName] = function (data) {
callback(data);
document.body.removeChild(script);
};
// 添加到body尾部
document.body.appendChild(script);
}
// 实测
jsonp('http://api.douban.com/v2/movie/in_theaters', {'count': 1}, function (data) {
console.log(data)
})