Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I have added a Facebook like box and like buttons on my blog and, recently, I've been seeing on analytics a lot of hits to pages ending with ?fb_xd_fragment=.

I've found a related thread on the Facebook Forums which, worryingly, mentions that for some weird reason IE8 users are being redirected to a blank page! This is terrible, am I losing a significant portion of my visitors because when they try to visit my blog they're greeted by a blank page? (I don't have at hand a Windows computer with IE8 to check)

Also on a related question on SO, it is suggested to add xmlns:fb="facebook.com/2008/fbml" to the main html tag (which I've done just now), and to add a channel.html file. But I can't do the later, because my blog is hosted on blogger and I can't upload html files.

So my question is twofold:

  1. even after adding the xmlns:fb, could this still be an issue that affects IE8 visitors
  2. how should I go about to fix it for my blog on blogger?
share|improve this question
    
I tried loading pedazosdecarbono.blogspot.com/?fb_xd_fragment=test and I got a blank page in both IE9 and Chrome. –  DisgruntledGoat Oct 18 '11 at 9:22

4 Answers 4

Looking at the Facebook Platform bug (marked "WontFix") a workaround seems to be to add the following to your pages:

From comment 14:

<!-- Correct fb_xd_fragment Bug Start --> 
<script> 
document.getElementsByTagName('html')[0].style.display='block';
</script> 
<!-- Correct fb_xd_fragment Bug End -->

Alternatively, you could look into implementing the solution proposed by comment 66, however as you're hosted on Blogspot I don't think that solution is open to you, as it requires the creation of an additional file on the server.

share|improve this answer

on a page linked (this one) on the thread you linked it said:

This Javascript to escape being framed on the page is the source of the problem:

0) { parent.location.href = location.href; } -->

When I remove that, Internet Explorer works.

The page works fine in both Firefox and Chrome with that code included on the page.

I unfortunately also can not reproduce the problem, but i hope that helps.

share|improve this answer

Try to look at this fix

Where you have your FB.init, add a channelUrl parameter as follows:

FB.init({appId: appId, status: true, cookie: true, xfbml: true, channelUrl: 'http://example.com/channel.html'});  
// ^ channel URL above used to workaround fb_xd_fragment bug  

Next implement a special static channel page. On that page include the javascript for the Facebook connect as follows:

<script src="http://connect.facebook.net/en_US/all.js"></script>  
share|improve this answer

I found this occurring on one of my sites using AddThis - and it affects ALL browsers, not just Internet Explorer. Haven't figured out exactly how or why it happens but the Facebook frame manages to set the parent's <html> element to display: none.

There is a simple workaround though - just add this to your stylesheet:

html { 
    display: block !important;
}

That overrides the inline style and stops the page disappearing.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.