# 八.hash
- 实现原理:
- a、b 页面同源
- a、c 页面跨域
- a:a 页面有 c 页面
- c:创建 b 页面并传值
- b:window.parent.parent.location.hash = location.hash
- a:得到 c 中的 b 传过来的值
- a.html
<iframe src='http://localhost:4000/c.html' id="frame" frameborder=" 0" style="border:1px solid red
"></iframe>
<script>
window.onhashchange = function () {
console.log("接受自c页面", location.hash)
}
</script>
1
2
3
4
5
6
7
2
3
4
5
6
7
- b.html
window.parent.parent.location.hash = location.hash
1
- c.html
let iframe = document.createElement("iframe")
iframe.src = "http://localhost:3000/b.html#send-to-a-page"
document.body.appendChild(iframe)
1
2
3
2
3
← 七.name 九.postMessage →