专注于.NET编程学习和技术分享

Jquery跨域子窗口关闭父窗口刷新

什么是跨域

浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域 。

域名:
 主域名不同 http://www.baidu.com/index.html –>http://www.sina.com/test.js
 子域名不同 http://www.666.baidu.com/index.html –>http://www.555.baidu.com/test.js
 域名和域名ip http://www.baidu.com/index.html –>http://180.149.132.47/test.js
端口:
 http://www.baidu.com:8080/index.html–> http://www.baidu.com:8081/test.js
协议:

解决方式

解决跨域的方式有很多种,比较常用的是:
JSONP 、 PostMessage 、 document.domain 、 window.name 等方式,这里要提供的是定时轮询的方式,应用场景是A页面是列表页,B页面是内容页,分别在不同服务器,在A页面点击链接弹出B页面,当B页面被关闭时需要刷新A页面。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
<HTML>  
 <HEAD>  
  <TITLE> New Document </TITLE>  
 </HEAD>  
 <BODY>  
  <SCRIPT>  
    window.onload=function(){  
        document.getElementById("open").onclick=function(){  
            var url="http://g.cn";  
            var win=window.open(url);  
            setInterval((function(win){return function(){  
                                    if(win.closed){  
                                        window.location.reload();  
                                    }  
                        };})(win),1000);      
        }  
    }  
  </SCRIPT>  
  <input id="open" type="button" value="open"/>  
 </BODY>  
</HTML>  
未经允许不得转载:墨鱼巴巴 » Jquery跨域子窗口关闭父窗口刷新
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址