javascript - 跨域 Iframe 高度操作

标签 javascript cross-domain

我的问题:

我有一个链接到各种外部网站的 iframe。

我根本无法访问外部网站!

我想要实现的是将我的 Iframe 与实际网站的 100% 高度/宽度嵌套到一个固定大小的 div 中,这样我就可以在这个 div 上应用自定义滚动条。

到目前为止,我有以下标记:

<div class="Content" style="margin: 0; padding: 0; height: 500px; width: 500px; overflow: auto;">
   <iframe id="mainframe" name="mainframe" src="http://www.fisk.dk" style="height: 100%; width: 100%;">
   </iframe>
</div>

正如预期的那样,Iframe 高度和宽度 100% 将转换为父 div 高度和宽度 500px。

在过去的 3 个小时里,我一直在谷歌上搜索,试图弄清楚如何通过使用纯 css 或 css 和 javascript 来实现这一点,但没有任何结果。

无效的结果:

  • Porthole - 需要访问外部网站。
  • EasyXDM - 需要访问外部网站。
  • 访问 document.getElementById('the_iframe').contentWindow 也不起作用 - 出现拒绝访问错误。

如有任何提示,我们将不胜感激!

最佳答案

在使用 EasyXDM 和 PostMessage 之前,我已经完全按照您的描述做了.正如您所注意到的,需要访问外部网站。您需要一些在外部网站域上运行的 JavaScript 代码。

浏览器不允许您网站上的 JavaScript 或 CSS 代码访问其他网站的 DOM,因此无法知道其他网站页面的高度。

关于javascript - 跨域 Iframe 高度操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15764509/

相关文章:

javascript - 如何制作一个让浏览器在 Node 环境中安全加载的 javascript webpack 模块?

javascript - 摇摇欲坠的比例动画

javascript - WordPress/woocommerce : Add dropdown choice (where did you find us? ) 结帐时 + 使用 Chart.js 创建仪表板

ajax - 移动应用程序 - 跨域 AJAX

Javascript不会从django进行跨域请求

Firefox 字体问题 - Bootstrap Glyphicons

javascript - CSS Transition 在增加高度时不更新背景颜色

javascript - 如何根据那里的键在平面列表中选择多个值

javascript - 两个窗口或选项卡之间的跨文档消息传递,而不是 IFrame

google-chrome - ServiceWorkers 可以覆盖 no-src 子 iframe 请求吗?