當iframe與父頁面不屬於同乙個網域名稱時,像上面的獲取會因為安全策略原因而失敗。在nczonline的一篇文章上看到一種方法,使用document.referrer。
方法很簡單,通過parent !=window檢測iframe與父頁面是否同源,當不同源時,使用document.referrer,否則使用parent.location.href或者top.location.href;
var
getparenturl
=function()
catch(e
)}return url;
}
當iframe是被動態建立的時候,以上方式依然有效。
父子頁面傳遞資料如下:
子頁面:
top.
postmessage
(json
.stringify
(data ||'')
,getparenturl()
)
父頁面:
window.
addeventlistener
('message'
,function
(event)},
false
);
父頁面需要先監聽子頁面內容,判斷一下是否從需要的域中返回的資料. iframe跨域獲取的父頁面URL
這2天主要處理乙個子頁面與父頁面跨域互動問題,子頁面需要獲取父頁面的url來傳遞資料,取不到,查資料得知,故整理一波.當iframe與父頁面不屬於同乙個網域名稱時,像上面的獲取會因為安全策略原因而失敗。在nczonline的一篇文章上看到一種方法,使用document.referrer。方法很簡單,...
跨域下使用獲取iframe的父頁面URL
通常情況下,我們獲取iframe父頁面的url很簡單 parent.location或top.location即可,但前提是它們遵循同源策略。當iframe與父頁面不屬於同乙個網域名稱時,像上面的獲取會因為安全策略原因而失敗。在nczonline的一篇文章上看到一種方法,使用document.ref...
跨域下使用獲取iframe的父頁面URL
通常情況下,我們獲取iframe父頁面的url很簡單 parent.location或top.location即可,但前提是它們遵循同源策略。當iframe與父頁面不屬於同乙個網域名稱時,像上面的獲取會因為安全策略原因而失敗。在nczonline的一篇文章上看到一種方法,使用document.ref...