當前位置:
首頁 > 知識 > 跨域Iframe腳本調用

跨域Iframe腳本調用

[size=medium] js跨域調用許多種解決方案,有document.domain+iframe、動態創建script和HTML5 postMessage等等。最近遇到了一些案例,需要調用iframe的腳本,而又不能使用document.domain來解決,這有一個比較有趣的解決跨域,原理是利用location.hash來進行傳值.[/size]

[b]a.com下的1.html文件[/b]

<script type="text/javascript">

var url = "http://b.com/2.html";

var iframe = null;

window.onload = function(){

iframe = document.createElement("iframe");

iframe.src = url;

iframe.style.width = "100%";

iframe.style.height = "1px";

iframe.style.border = "none";

document.body.appendChild(iframe);

}

function sendData(data){

try {

if (console.log) {

console.log("Send data "+data);

iframe.src = url + "#" + data;

}

} catch(e) {};

}

</script>

[b]b.com下的2.html文件[/b]

<script type="text/javascript">

var url = "http://b.com/2.html";

var iframe = null;

window.onload = function(){

setInterval(receiveData, 2000);

}

function receiveData(){

try {

var data = location.hash ? location.hash.substring(1) : "";

if (console.log) {

console.log("Receive the data is "+data);

}

} catch(e) {};

}

</script>

跨域Iframe腳本調用

打開今日頭條,查看更多圖片
喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 程序員小新人學習 的精彩文章:

終於有人把「TCC分散式事務」實現原理講明白了!
通俗易懂,C井如何安全、高效地玩轉任何種類的內存之Span

TAG:程序員小新人學習 |