SWFObject includes a static publishing option. You can use markup to embed the SWF and avoid JavaScript altogether, much like you describe. By default, SWFObject's static publishing method uses Flash Player detection to ensure you have the specified minimum version. If not, it strips the <object>
tags from the markup and displays the fallback content instead (or invokes ExpressInstall, if appropriate).
SWFObject's static publishing is explained in more detail here: