Displaying Facebook in an Iframe on my website
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 In开发者_如何学编程to facebook. When i Login it get's redirected to the Main Site.
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>
Theoretically it should be possible to do it in the following steps:
- Fetch the Facebook.com's html with AJAX.
- Remove the undesired javascript what Zimbabao pointed or add new javascript that overrides undesired function.
- 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
I think that Facebook is blocking its usage within an iframe tag.
Use Facebook API to get your wall posts, and then display them where you like. http://developers.facebook.com/
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
Iframe your facebook content like this:
<iframe src="http://www.facebook.com/plugins/likebox.phpid=YOURUNIQUEID&width=158&connections=5&stream=true&header=false&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>
This question is old. Now all the posts on FB have a embed with iframe, or direct link
精彩评论