Displaying Facebook in an Iframe on my website

末鹿安然 提交于 2019-11-28 02:15:20

问题


I want to Display Facebook's Webpage on my site ?

<html>
<body>
    <iframe src="http://www.facebook.com/" name="iframe_a"></iframe>
</body>
</html>

This just show's me an image of Facebook but not the actual content. How can i do that ?

I tried and used Php and then echoed the content on the screen that some how worked But In that case , I cant understand How shall i Login Into facebook. When i Login it get's redirected to the Main Site.


回答1:


This is the code facebook embedded in its pages.

if (top != self) { try { if (parent != top) { throw 1; }

This code checks if its embedded in iframe its blocks loading other data rather loads the the link to which you can click with an image.

<script type="text/javascript">
        /* <![CDATA[ */if (top != self) { 
           try { if (parent != top) { throw 1; } 
           var disallowed = ["apps.facebook.com","\/pages\/","apps.beta.facebook.com"];
            href = top.location.href.toLowerCase(); 
              for (var i = 0; i < disallowed.length; i++) {
                  if (href.indexOf(disallowed[i]) >= 0) { throw 1; } 
              } 
          } catch (e) {
             setTimeout(
                   function() {var fb_cj_img = new Image(); 
                      fb_cj_img.src = "http:\/\/error.facebook.com\/common\/scribe_endpoint.php?c=si_clickjacking&m=on\u002509&t=8183";}, 5000); 
        window.document.write("\u003cstyle>body * { display:none !important; }\u003c\/style>\u003ca href=\"#\" onclick=\"top.location.href=window.location.href\" style=\"display: block !important; padding: 10px\">\u003ci class=\"img sp_8dfqpl sx_d67a9a\" style=\"display:block !important\">\u003c\/i>Go to Facebook.com\u003c\/a>");

  /* XRCm4Hhw */ }}/* ]]> *

  </script>



回答2:


Theoretically it should be possible to do it in the following steps:

  1. Fetch the Facebook.com's html with AJAX.
  2. Remove the undesired javascript what Zimbabao pointed or add new javascript that overrides undesired function.
  3. and then do a document.write to release the modified HTML for the browser to parse and render.

This is the same principle how Javascript-function-overriding works with GreaseMonkey [1]. In [2, 3], you will find how functions can be overridden with Javascript.

  • [1] https://addons.mozilla.org/es-eS/firefox/addon/greasemonkey/
  • [2] Overriding a JavaScript function while referencing the original
  • [3] http://www.novogeek.com/post/2010/02/27/Overriding-jQueryJavaScript-functions-using-closures.aspx



回答3:


I think that Facebook is blocking its usage within an iframe tag.




回答4:


Use Facebook API to get your wall posts, and then display them where you like. http://developers.facebook.com/




回答5:


it makes really no sense to display facebook in an iframe on your website.

if you want to display facebook content on your page use Facebook Badges




回答6:


Iframe your facebook content like this:

<iframe src="http://www.facebook.com/plugins/likebox.phpid=YOURUNIQUEID&amp;width=158&amp;connections=5&amp;stream=true&amp;header=false&amp;height=555" 
        scrolling="no" 
        frameborder="0" 
        style="border:none; overflow:hidden; width:158px; height:555px;" 
        allowTransparency="true">
</iframe>

<div class="fb-like" 
     align="center" 
     data-href="https://www.facebook.com/YOURFBADDRESS" 
     data-send="true" 
     data-width="500" 
     data-show-faces="false" 
     data-font="verdana">
</div>



回答7:


This question is old. Now all the posts on FB have a embed with iframe, or direct link



来源:https://stackoverflow.com/questions/5091519/displaying-facebook-in-an-iframe-on-my-website

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!