我有一个名为main.jsp
的网页,位于网域domain1
中,并且它有一个加载domain2
内容的iframe。基本上main.jsp
是常见内容,在iframe中我们从部署在不同服务器上的其他Web应用程序加载内容。
我的问题是我想自动刷新iframe中的内容(比如说5秒)。我先试过这段代码:
<meta http-equiv="refresh" content="5;url=<s:url includeParams="all" />" />
Err: Blocked a frame with origin "http://localhost:8080" from accessing a cross-origin frame
我试过这段代码:
<script type="text/javascript">
window.setTimeout(function(){ window.location.reload() }, 15000);
</script>
这也给了我同样的错误。任何人都可以指导我如何实现这一目标吗?
注意: 我添加了此代码以摆脱跨域问题:
<script type="text/javascript">
document.domain = window.location.hostname.replace('www.', '');
</script>
答案 0 :(得分:0)
尝试动态添加
function addRefresh(){
var meta = document.createElement('meta');
meta.setAttribute("http-equiv", "refresh");
meta.setAttribute("content", "5");
document.getElementsByTagName('head')[0].appendChild(meta);
}
if(location.origin === 'domain1.com'){
addRefresh();
}