2

此代码在 Dreamweaver 默认浏览器中有效,但在 chrome 或 firefox 中无效。它只显示空白页,不显示 google.com。不知道为什么!可能是 iFrame 的问题。但我必须在我的页面中显示其他页面。有什么办法吗??

<!DOCTYPE html>

<html>
<head>
<title>booo yeah</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js" ></script>
<script type="text/javascript">
    $(document).ready(function() {
        var height = $(window).height();
        var width = $(window).width();
        $('iframe').width(width);
        $('iframe').height(height);
}); 
</script>
</head>
<body>
<iframe src="http://www.google.com" frameBorder="0"></iframe>
</body>
</html>

屏幕截图: http: //goo.gl/jTpB2g 背面是具有左侧代码的dreamweaver,右侧是显示工作代码的默认浏览器。在前面,有没有任何东西显示的镀铬

4

4 回答 4

3

您尝试显示的网站具有防止其在iframe. 例如<iframe src="http://www.w3schools.com"></iframe>工作正常。问题不在于您的浏览器。

于 2013-11-07T12:17:22.527 回答
0

出于安全原因,它可能不会显示。

同源政策

同源策略防止从一个源加载的文档或脚本从另一个源获取或设置文档的属性。该政策可以追溯到 Netscape Navigator 2.0。

有些网站确实允许,但谷歌不允许。奇怪的是,Dreamweaver 可以这样做。

有一些方法可以规避它(虽然我不能说它们适合你的问题)。

规避同源政策的方法

于 2013-11-07T12:13:41.723 回答
0

正如ajtrichards所说,由于Same Origin Policy ,谷歌有限制。

只需尝试另一个域,您将看到您的代码有效

jsbin.com/UJeHaqe/1/edit

于 2013-11-07T12:15:03.717 回答
0

打开控制台面板,您会看到一条错误消息:

Refused to display 'https://www.google.com/' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.

谷歌搜索返回一个X-Frame-Options带有 的标题SAMEORIGIN,这意味着该页面只能显示在与页面本身同源的框架中。

从X-Frame-Options 中查看更多信息

解决方案:

如果您有权访问该站点,请尝试将其设置X-Frame-OptionsALLOWALL或直接从 http 响应中删除。

如果您卡在 google,请尝试改用 Google 自定义搜索,将您的 url 替换为 this http://www.google.com/custom,它会发送“X-Frame-Options: ALLOWALL”,允许您将此站点嵌入到您的 IFRAME 中。

于 2013-11-07T12:25:55.187 回答