我正在尝试开发一个页面,我可以一次显示超过3个网站, 如下:
<ul>
<li>
<iframe src="http://www.facebook.com/" /><p> iframe is not supported</p>
</li>
<li>
<iframe src="http://www.yahoo.com/"></iframe>
</li>
<li>
<iframe src="http://www.google.co.in"></iframe>
</li>
</ul>
问题在于它显示了yahoo.com和google.co.in,但没有在iframe中显示Facebook。
答案 0 :(得分:20)
您必须检查这些网站的HTTP响应标头X-Frame-Option。如果其值为“DENY或SAMEORIGIN”,则您无法在iframe中加载这些网站。
拒绝=没有人可以在iframe中加载网站。即使是相同的域页也无法加载。 SAMEORIGIN =只有同一个域中的网页才能在iframe中加载此网站。
答案 1 :(得分:5)
由于一些网站决定禁止将它们嵌入到iframe中,因此纯粹的html解决方案无法做到。您可以创建一个服务器端脚本(在PHP中),通过您的网络服务器提取目标网站,然后使用html等。
我能想到的唯一方法是让您检查网站加载的是搜索iframe以查找目标网站上存在的特定元素(例如Facebook上具有特定ID或类的div #39;的头版)。原因是不同的网站可以处理嵌入到iframe中的不同,有些可能会显示一些内容,有些可能无法显示等等,唯一的方法是检查真实元素。
答案 2 :(得分:3)
facebook不希望您在框架中加载主网站
<iframe src="http://m.facebook.com/" width="200" height="300" scrolling="auto" frameborder=0></iframe>
width =“200”height =“300”可以相应调整。
这样做是在框架而不是主站点加载移动版facebook。
答案 3 :(得分:0)
你将无法做到这一点,你只能像按钮那样使用iframe ...而不是整个网站。
答案 4 :(得分:0)
您可以使用对象标签:
<object data = "https://facebook.com"></object>
答案 5 :(得分:-2)
使用http://devilishdb.koding.com/proxy?facebook.com这是我制作的代理系统。我为谷歌测试了它的确有效。希望这有帮助