2014-01-17 60 views
0

時,我有兩個應用程序不能夠實現,他們將是一個iframe中的網站不同的選項卡之間進行導航,使用iframe的

當我點擊一個按鈕,在應用程序1,應該導航到選項卡瀏覽器包含 應用2,反之亦然。 我在這兩個應用程序中都有類似下面的代碼,當我使用我的應用程序的完整鏈接時,它工作正常。但是,當他們去一個iframe中,我不能設置window.parent.name和導航是沒有發生

<script type="text/javascript"> 
     window.name = "Application1"; 

     </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
    <a id="game" href="website.aspx" target="Application2">Click for application 2</a> 

    </div> 
    </form> 
</body> 
</html> 

回答

0

如果頁面在不同的域或子域託管你會遇到跨域問題,反正用這個方法。你可能想使用window.postMessage以確保兼容性,這裏有一個很好的例子:

http://html5demos.com/postmessage2

一個例子是:

parent.html

<iframe id="iframe" src="child.html"></iframe> 
<script> 
    var win = document.getElementById("iframe").contentWindow; 
    win.postMessage('Message from parent', 'child.html'); 
</script> 

child.html

<div id="output"></div> 
<script> 
    window.onmessage = function(e) { 
     if (e.origin !== "parent.html") { 
      return; 
     } 
     document.getElementById("output").innerHTML = e.origin + " said: " + e.data; 
    }; 
</script> 
+0

這是可行的,即使我沒有控制在主要p在iframe中託管我的應用程序的年齡? –

+0

僅限使用window.top,window.post您需要訪問雙方的消息以允許發送消息 –

相關問題