Found it! The problem is with the li.innerHTML =
assignment. Basically, you're feeding the Twitter script a template somewhere, which looks like
"<li class="ftr-tweet"><p>%text%</p><a href="http://twitter.com/%user_screen_name%/statuses/%id%" class="ftr-tweetTimestamp">%time%</a></li>"
But unfortunately, Twitter already created a <li>
and only wants to get its inner HTML. What happens now is that you insert a <li>
into the Twitter-created <li>
... which most browsers accept, but IE8 doesn't. It simply won't accept incorrect HTML, which is of course a very noble principle for Microsoft. See http://www.theogray.com/blog/2009/06/internet-explorer-unknown-runtime-error.
So the solution is leaving the li out of your template. But then you won't have the ftr-tweet
class anymore... So replace it with a <span>
and all's well with the world.
"<span class="ftr-tweet"><p>%text%</p><a href="http://twitter.com/%user_screen_name%/statuses/%id%" class="ftr-tweetTimestamp">%time%</a></span>"