Does the code work in IE8 or is it interrupted? The reason I'm asking is that if it works as expected, you can just wrap it in a try{ } catch{ \\do nothing } and put it in another thing that IE has garbage in.
You might be better off creating an object to create a facebook div. Sort of...
var html = $('<div />'); html.attr('class', 'facebook');
Then in each cycle you can do it ...
$('<div />').attr('class', 'n').append(fb.name).appendTo(html); $('<div />').attr('class', 't').append etc...
Then add html to your facebookfeed object
Doing this can remove the error area when using single quotes and double quotes when concatenating strings together, which in turn can solve your problem in IE8
$('.facebookfeed').fadeOut(500, function(){ $(this).append(html).fadeIn(500); });
Hope this helps!
UPDATE
The append method is used to add material to a jquery object. For more information see here .
So, to surround the div, as you mentioned in the comments, you will do something like this ...
var nDiv = $('<div />').attr('class', 'n').append(fb.name); $('<div />').attr('class', 't').append(fb.somethingElse).appendTo(nDiv);
And then you need to add this to the html div so that ...
html.append(nDiv);
So this will give you
<div class="facebook"> <div class="n"> value of fb.name <div class="t"> value of fb.somethingElse </div> </div> </div>
So what have you done, a new jquery object is created and added to it, and then added to the html object that you added to the facebookfeed div. Confused?