这篇文章主要为大家详细介绍了jQuery用iframe来解决跨域的简单示例(1),具有一定的参考价值,可以用来参考一下。 感兴趣的小伙伴,下面一起跟随512笔记的小编罗X来看看吧。跨域的解决方案有许多种,就不一一介绍了,在这里主要总结一下用iframe来解决跨域的方法。 首先,说明一下window.name这个属性,我们要用这个属性来保存从服务器返回的数据。 window.name的值在同一浏览器窗口加载不同的页面后依然存在。(比如在同一浏览器窗口下,先访问页面a.html,将window.name设定为”Hello World”,然后再访问b.html,window.name仍然是”Hello World”。) window.name最多可以支持2MB的值。 接下来结合代码来说明这个解决方案。为了实现跨域访问,当然要找到两个不同的域,最简单的,用http://localhost/和http://127.0.0.1/就可以了。新建一个client.html并假定其在http://localhost/这个域下面,用来向http://127.0.0.1/域下的页面server.html发送异步请求。 下面是发送请求的代码:
根据上面的分析,在http://localhost/下建一个新的页面empty.html(不用往里添加代码,只要保证不404就好。),在iframe1_load函数中先把iframe1导航到http://localhost/empty.html,然后再从iframe1的window.name里取数据。注意,iframe1导航到新页面之后浏览器会再次调用iframe1_load,从而造成死循环,所以还要加个标记。
注:关于jQuery用iframe来解决跨域的简单示例(1)的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。关键词:iframe,跨域 |
|