子iframe使用jquery訪問父頁面時,報錯uncaught domexception: blocked a frame with origin "url" from accessing a cross-origin frame.
,這是跨域導致的
設host
進行網域名稱重定向,開啟c:\windows\system32\drivers\etc\hosts
新增一句
127.0.0.1 www.xercis.com
index.html父頁面設domain
>
head
>
>
style
="background-color
:orange;
height
:200px;
width
:50%;
float
:left;
">
"name"
type
="text"
placeholder
="輸入姓名"
>
div>
style
="background-color
:pink;
height
:200px;
width
:50%;
float
:right;
">
src=
"iframe.html"
>
iframe
>
div>
>
document.domain =
"xercis.com"
;script
>
body
>
html
>
iframe.html
>
head
>
>
"get"
>
獲取姓名button
>
src=
"">
script
>
>
// document.domain = "xercis.com";
// 子iframe訪問父頁面元素$(
"#get").
click
(function()
);// 子iframe監聽父頁面元素$(
"#name"
, parent.document)
.change
(function()
);script
>
body
>
html
>
server.py
import sys
import tornado.web
import tornado.ioloop
class
indexhandler
(tornado.web.requesthandler)
:def
get(self)
: self.render(
"index.html")[
(r"/"
, indexhandler)
,(r"/(.*)"
, tornado.web.staticfilehandler,),
])port =
8888
print
("".format
(port)
)tornado.ioloop.ioloop.current(
).start(
)
頁面協議相同
埠號相同
主機相同,父子頁面的document.domain設為相同值
給iframe.html新增上domain之後就可以了
window.postmessage - web api 介面參考 | mdn
html5 postmessage解決跨域、跨視窗訊息傳遞
iframe 跨越訪問 iframe跨域訪問
js跨域是個討論很多的話題。iframe跨域訪問也被研究的很透了。一般分兩種情況 一 是同主域下面,不同子域之間的跨域 同主域,不同子域跨域,設定相同的document.domian就可以解決 父頁訪問子頁,可以document.getelementbyid myframe contentwindo...
iframe跨域資料訪問
前提 父頁面和子頁面不同域 首先是父頁面傳資料給子頁面 parent.html your browser dose not support iframes child.html 需要注意的是一定要加上http 同時統一用ip都用ip,用網域名稱都用網域名稱,用localhost都用localhost...
iframe跨域訪問 vue Elment ui
首先,1 在html中先寫乙個iframe標籤2 定義src訪問位址export default3 用postmessage傳值,this是當前頁面,nexttick是先等頁面載入完以後在載入,postmessage第乙個引數是你要傳的值,第二個引數是你要訪問的ip位址和埠號 this.nextti...