我在不同的服务器上有两个文件,我正在使用 iframe 将一台服务器的数据显示到另一台服务器,我正在使用下面的代码
server.php(托管在服务器A上)
<?php
header("Access-Control-Allow-Origin: *");
header('Access-Control-Allow-Methods: GET, POST');
?>
this is itest
<div style="height:1100px; background-color:pink; width:100px" >sdfsd</div>
<a href="javascript:;" onclick="goTop()">Go to Top</a>
<script>
function goTop () {
parent.scrollTo(0,0);
}
</script>
client.php(托管在服务器 B 上)
<iframe src="http://serverA.com/server.php" height="1200px" >
当我点击“转到顶部”链接时,我收到“未捕获的安全错误:阻止了一个来源为“....”的框架访问来源为“...”的框架。协议(protocol)、域和端口必须匹配.”
解决方案是什么?
最佳答案
- 在父框架中创建一个将滚动到顶部的函数(您已经以
goTop
的形式完成了此操作) - 在
window
对象上的message
事件监听器中使用该函数 - 使用框架中文档中的
parent.postMessage
向父元素发送消息
参见 the MDN postMessage
page例如。
关于javascript - iframe 滚动问题.. 解决方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22990903/