繁体   English   中英

如何从IE中的跨域iframe获取窗口大小

[英]How to get window size from cross-domain iframe in IE

在跨域方案中,当iframe内部运行javascript代码时,我需要知道iframe的大小(宽度和高度)是多少。 (由于我处于跨域iframe中,因此我无法爬升到父级)注意:我不想使用jquery。 我尝试了几种获取该信息的方法:

var w = window.innerWidth || window.document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth || document.body.offsetWidth
var h = window.innerHeight || window.document.documentElement.clientHeight || document.getElementsByTagName('body')[0].clientHeight || document.body.offsetHeight

因此,您是否要访问另一个域上的iframe? 由于XSS保护,您不能这样做。

这是一个类似的问题: 获取跨域iframe的DOM内容

http://en.wikipedia.org/wiki/Cross-site_scripting

编辑:也许此解决方案可以根据您在页面上的权限,向您提示如何执行http://paulasmuth.com/blog/dynamic_height_crossdomain_iframe/

如果要获取窗口大小,请使用以下代码(如果有,则不包括滚动条大小):

var w = document.documentElement.clientWidth;
var h = document.documentElement.clientHeight;

如果要获取文档大小,请使用此文件(不包括滚动条大小):

var w = document.documentElement.scrollWidth;
var h = document.documentElement.scrollHeight;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM