我们正在尝试在我们的自定义页面中显示一些受欢迎的网站。我们添加了一些带有相关链接的按钮,当单击它们时,它应该重定向到该网站,同时显示在我们的同一页面上。
是否有任何解决方法?
我们的方法是,为每个按钮放置一个click事件,然后在其中添加一个iframe。但是,大多数网站无法显示在框架上。
<button id = "google"></button>
<div id ="googledisplay"></div>
var google = document.getElementbyId("google");
$("#google").one("click", function(e) {
$("#googledisplay").append('<iframe src="http://www.google.com"></iframe>');
});
似乎Google不能显示在iFrame中。任何建议,指导都欢迎。
答案 0 :(得分:1)
大多数网站都会拒绝将其网站放在iframe上作为另一个网站的一部分的请求。当您尝试创建Google网站的<iframe>
时,浏览器会因为其X-Frame-Options
标头而拒绝它。 Chrome控制台中的错误将显示为:
Refused to display 'https://www.google.com/' in a frame because it set 'X-Frame-Options' to 'sameorigin'.
TLDR:很少有网站允许这种行为,这根本不是正确的方法。
编辑:要回答问题的第二部分,他们对此没有实际的解决方法。如果在浏览器中找到类似的东西,它将被视为错误并立即进行修补。这完全是安全问题。