如何解决javascript的跨域问题
展开全部
一般是用iframe设置
document.domain = 'a.com';
var ifr = document.createElement('iframe');
ifr.src = 'http://a.com/index.html';
ifr.style.display = 'none';
document.body.appendChild(ifr);
ifr.onload = function(){
var doc = ifr.contentDocument || ifr.contentWindow.document;
console.log(doc.documentElement.innetHTML);
};
然后HTML5新特性有 ,postMessage
function Init () {
if (window.addEventListener) {
// all browsers except IE before version 9
window.addEventListener ("message", OnMessage, false);
}
else {
if (window.attachEvent) {
// IE before version 9
window.attachEvent("onmessage", OnMessage);
}
}
}
function GetState () {
var frame = document.getElementById ("myFrame");
var message = "getstate";//参数
if (frame.contentWindow.postMessage) {
//传递的参数,后面是传递的你的跨域域名
frame.contentWindow.postMessage (message, "*");
}
}
function OnMessage (event) {
console.log(event.data);
}
document.body.onload=function(){Init();GetState();};
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询