Issue 536: Flashvars parsing wrong in IE
Issue 536: Flashvars parsing wrong in IE

http://code.google.com/p/swfobject/issues/detail?id=536

This is a potentially controversial change. I replaced createSWF's inner workings.  As previously constructed, createSWF generated a string for IE and native HTML <object> for non-IE. This lead to unequal handling of flashvars, among other things (issue 536 is focused specifically on the unequal flashvars handling). The non-IE handling used setAttribute to append flashvars to the param/object, whereas the IE version used string concatenation.

This proposed version of createSWF creates an <object> for ALL browsers, but for IE converts the <object> to a string via innerHTML before appending to the page using outerHTML (the outerHTML handling is retained from SWFObject 2.2).

This streamlines the code, make handling of flashvars consistent in all browsers, and hopefully compresses better, too.

I haven't tested it thoroughly, but so far it works in all the browsers I've tried, including:

OSX: Chrome 11, Firefox 4
Win7: IE9
WinXP: IE7
Signed-off-by: Philip Hutchison <3ba3974e96044dcde818e6310ed799abe10671d4@pipwerks.com>

swfobject/swfobject,swfobject/swfobject