h5跨域访问图片_H5跨域的解决问题!

var HOST = 'http://hummer.baidu.com';

var autoAjax = function(data){

if(!data || typeof data != 'object') return;

var rnd    = new Date().getTime();

if(!data.proxy) data.proxy = HOST + '/static/proxy.html?_='+rnd;

var name    = 'postIframe';

var proxyhost   = /^((?:[^:\/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?(?:[^#]*))?(?:#(.*))?$/.test(data.proxy);

proxyhost   = RegExp.$1 + RegExp.$2;

var _host   = /^((?:[^:\/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?(?:[^#]*))?(?:#(.*))?$/.test(data.url);

_host = RegExp.$1 + RegExp.$2;

var _domain = 'http://' + location.host;

var _back   = function(ret){

try{

if(typeof ret === 'string'){

ret = ret.replace(/^[^{]+/img,'');

ret = $.parseJSON(ret);

}

if(!!ret.source){

ret = ret.data;

}

if(typeof ret === 'string') ret = $.parseJSON(ret);

}catch(_err){

ret = {success:1,info:'提交失败'};

}

data.callback(ret);

};

if(_domain === _host && _host != ''){

var _data = {data: data.data};

var ajax = $.ajax({

type:'post',

url: data.url,

data: data.data

});

ajax.always(_back);

}else{

var oFrame = $('#'+name);

if(!!oFrame.length){

oFrame.attr('src',data.proxy);

}else{

oFrame = $('').appendTo(document.body);

}

var msg    = {

url: data.url,

data: data.data

};

if(typeof msg == 'object'){

msg = JSON.stringify(msg);

}

window.onmessage = _back;

oFrame.unbind('load').load(function(){

this.contentWindow.postMessage(msg,HOST);

});

}

}

var data = {

url: "对应接口",

callback: function(ret){

/*if(ret && ret.success == 0){

setCurrentDate();

createSearchList(ret);

}else if(ret && ret.success == 2){

return poplayer({msg: ret.info,icon:'error',after:function(){

location.href = (ret.login_url || API.login);

}});

}else{

return poplayer({msg: (ret ? ret.info : '获取查询列表失败'),icon:'error'});

}*/

console.log(ret);

}

};

autoAjax(data);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值