之前在论坛里看到有个同学问关于跨域调整iframe高度的问题,正好之前解决过类似问题,鉴于此问题还是有一定的通用性,索性总结一下,记录于此。
具体思路如下:
父页面域名为 : www.a.com
IFRAME里子页面域名为 : www.b.com
1.在父级页面所在域名(www.a.com)下设置一个文件,(用来设置IFRAME的高度)比如:http://www.a.com/setHeight.html
2.在子级页面加载完毕后,计算当前页面高度付给一个变量cheight,然后动态创建一个iframe,src是http://www.a.com/setHeight.html#cheight;
3.通过在setHeight.html页面中parent.parent.document.getElementById(\\\’iframeid\\\’)来调整iframe的高度
4.解释一下,在子页面里动态创建的iframe跟当前子页面的父级页面是同一个域名,这样就不存在跨域问题了。
举例:
假设父页面的域名是www.a.com,页面名字是A.html;子页面的域名是www.b.com,页面名字是B.html
父页面A.html的内容如下: