2013-11-27 76 views
3

我很努力地在我的iframe中獲取parenet URL(即顯示在瀏覽器中的URL)。我的父母網站是gslb13.aaa.com。內部有一個iframe,我在其中加載我的網站test.elasticbeanstalk.com(注意兩者都在不同的域) 點擊smile鏈接gslb13.aaa.com。它會在iframe中加載test.elasticbeanstalk.comJQuery在IFrame中獲取父級URL:iframe及其父級在不同的域中

獲取父網址我

var url = (window.location != window.parent.location) ? document.referrer: document.location; 
alert(url); 

我得到的test.elasticbeanstalk.com(負載)的索引頁父URL嘗試。 則:

1)我點擊「添加」按鈕,在test.elasticbeanstalk.com去重複同樣的代碼add.jspx下一個視圖

2)來獲得相同的父URL

但不幸的是我得到了test.elasticbeanstalk.com的網址(不是父母的URL:gslb13.aaa.com)

Can任何人都可以告訴我一種方法來處理這個問題嗎?

回答

0

你不能。

相同的原產地安全規則禁止它。 http://en.wikipedia.org/wiki/Same-origin_policy

您需要通過獲取請求傳遞父頁面的URL,否則沒有可靠的方法來獲取「父」URL。

你需要這樣的iframe:

<script type="text/javascript"> 
url = encodeURIComponent(document.location.href); 
document.write('<iframe src="http://test.elasticbeanstalk.com/something.php?refer='+url+'"></iframe>'); 
</script> 
+0

父網站是我的control.SO我不能在那裏寫任何代碼 – Charlie

5

使用

document.referrer; 

Refer This

+0

是男人!!!感謝您的即時反饋 – Charlie

+0

@ user1575713這是因爲當您加載了新的一頁在您的網站上頁會成爲推薦人。你可以追加一個查詢字符串到索引頁面上的鏈接來存儲初始引用者 – Brian

+0

@Brian:Yup ..我同意你的看法。但我在每個視圖中都有這樣的8個按鈕,所有地方的追加查詢字符串都會造成混亂。我想知道是否沒有辦法獲得當前的瀏覽器URL,即使我在iFrame內?是否JQuery不像預期的那樣高級? – Charlie