Please note that there is an issue with this version of SWFObject. When clicking links that use href=”javascript:” in them, it triggers the new onbeforeunload, which makes all your swf files dissapear. All users should upgrade to 1.4.4.
This release only contains a single fix for a new issue that occurs when using Flash Player 9.
If you have multiple swf files embedded in a single HTML page, and at least one of those files uses ExternalInterface to add a callback, when you leave the page you will get an error that says “Line 56: Out of Memory”.
This only occurs in IE – no other browsers are affected, and it only happens when using Flash Player 9 whether you are using SWFObject or not.
The problem is in some new Javascript code that was inserted into Flash Player 9 to fix a bug in the IE browser. This IE bug affected swf files that connected to streaming media servers – to learn more about it you can read this blog post.
After working with Adobe, we came up with a Javascript fix for the streaming media issue and I used a variant of this code in the 1.4.2 version of SWFObject. All was fine then, until Flash Player 9 was released, and it turns out Adobe included their own Javascript (that is very similar to the fix in SWFObject) to fix the streaming media problems in IE. The only problem is that the code they used doesn’t like it when there is more than one swf embedded in a page.
So to get to the point, this new version of SWFObject just removes the ‘bad’ code that Flash Player 9 inserts into the page and instead uses the cleanup code from the previous version of SWFObject that has been working fine for Flash Player 8.
Go grab a copy now – anyone using ExternalInterface needs to be aware of this issue and should upgrade their SWFObject script immediately if you have any pages with more than one swf embedded in it.
Here’s a direct download link, or you can get it out of the SVN repository, or visit the SWFObject page and get it from there.