具有动态html菜单的iframe能否在iframe外部显示其菜单?

时间:2018-08-17 14:09:10

标签: javascript iframe

我有一个网页,其中包含一个来自第三方网络应用程序的iframe。

iframe中的Web应用程序具有一个动态弹出菜单,该菜单在iframe的边缘被切断。

无论如何,我是否可以嵌入iframe,以便可以在iframe的边框之外显示此动态菜单?我完全信任第三方网站,但不能更改任何代码。

我怀疑是否有可能,因为我认为这是一个安全问题(点击劫持),但想确定一下。

这是问题的图片,黑色是iframe边框,红色矩形是被切除的部分。 enter image description here

2 个答案:

答案 0 :(得分:0)

CORS政策不允许您这样做。唯一的方法是允许跨域请求来控制第三方网站的域名。

MDN:https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

答案 1 :(得分:0)

我从来没有找到一种完全可以做到这一点的方法,并且强烈怀疑它永远不会与第三方网站一起使用。

但是我确实意识到您可以缩放iframe的内容以适合iframe,这对我有用

这似乎是最好的stackoverflow

How can I scale the content of an iframe?

这是一个可在Chrome,Safari和Firefox(现代)中运行的示例,但不确定较旧的浏览器。它显示了嵌入iframe中的网站,并对其进行了缩放以适合iframe的大小。

.wrap { width: 320px; height: 196px; padding: 0; overflow: hidden; float: left;}
.frame { width: 1280px; height: 786px; border: 1px solid black}

.frame {
    // zoom: 0.25;
    -moz-transform: scale(0.25);
    -moz-transform-origin: 0 0;
    -o-transform: scale(0.25);
    -o-transform-origin: 0 0;
    -webkit-transform: scale(0.25);
    -webkit-transform-origin: 0 0;
}
<p>before the iframe</p>
<div class="wrap">

<div class="wrap">
    <iframe class="frame" src="https://time.is">
    </iframe>
</div>