Yet Another Pointless Tagline
Permanently Uncached header image 1

Troubleshooting IE Problems with Facebook Connect

November 6th, 2009 · 2 Comments · Web Design

Having just spent the last couple of hours at the end of my week, yes it is currently 7.30pm on a Friday night, trying to figure out why the hell IE7 and IE8 did NOT work with Facebook Connect, I figured I should spend at least putting all the ills in the world to right by spending the next 30 minutes detailing some of the issues I read up on and the final solution to my problem in an effective following to my last article on FB connect Troubleshooting FB Connect with Flash.

The sweet and the short of the problem was that despite FB connect working seamlessly in FF et al, it didn’t seem to work at all in IE.  With further investigation and troubleshooting I realised that if I connected on another site, essentially creating a session with FB, and then returned to the site I was developing on the publish to stream functionality and iFrame overlay actually worked.  This little detail was what threw me off the scent and sent me on a wild goose chase looking for more complex answers than were needed.

  • XML Namespace
    Mentioned, and reportedly fixing issues in more than one place was the need to make sure that the xmlns:fb attribute was appended to the HTML tag both for the page in question and in the xd_receiver.htm.  That being said, given that i was invoking with flash, and the xd_receiver.htm contained no FBML, this made little sense and despite making the suggested changes, this resolved nothing.
  • P3P headers
    Another favourite was for people to suggest adding P3p headers.  This, with Apache, can be achieved by adding a Header Append rule to the site’s .htaccess file, as follows: Header append P3P "CP=\"HONK\""
    Again, apparently this fixed some people’s issues, but whatever mandate i gave the header as a directive to IE, it made little difference.
  • FB RequireFeatures
    Another option discussed was bootstrapping features to the FB.init and other processes by using the FB_RequireFeatures method as described here in the FB developer wiki., essentially forcing FB to load the required files, code and everything else each time functionality is invoked.

And so eventually, after running around in circles, I realised, having looked at Developer Tools in IE8, that the HTML code was being generated in the document and it just wasn’t showing up.  The immediate thought was that it could be a Z-INDEX issue, but again this didn’t make sense, so I started a cross-office discussion with the lead flash dev here at Stink Digital, and it quickly become apparent, the thing we were missing was the WMODE param for Flash, and as soon as this was put into the swfEmbed code, FB connect started working immediately in IE, both 7 & 8.

And so how did the iFrame overlays work in IE, having made a session connection to FB on another site in IE? Who knows, but anyhow, I finally had my answer! And hopefully yours too.

2 Comments so far ↓

  • Brock

    thank you so much for this, i’ve been losing my mind trying to figure out why it wouldnt work in ie. it was the wmode.

  • Rohan Kharbanda

    Hey

    So we had the exact same problem with a campaign we were designing in flash and utilized fb connect….after trying EVERYTHING we just couldnt get it to work in IE…our wmode was already set to transparent, xml name spaces were added and what not….

    finally…i used the developer tools in IE 8 to notice that a the fbconnect modal box is contained in a div called FB_HiddenContainer…all i has to do was manually set the z-index of FB_HiddenContainer to 100 using css and it worked like a charm…

    i wouldnt have figured it out if you had not mentioned the developer tools option…for that matter even IE8 (dont ask why, but before that we were testing in IE6 *ashamed* )

    so…well…thanks!

    also…you might want to add this as an update to your blog entry for any other poor soul

    Cheers!

Leave a Comment

Required

Required, Hidden