This has to do with a law suit Macromedia placed against MS for distribution of their products within the browser (EXTREMELY paraphrased, but something a lot like that.) Use the open source library SWFObject, it gets rid of this and provides a much better way of presenting Flash than either the antiquated embed-in-object or Satay methods. It will get rid of the line.
This will be one of two things. If the path to the Flash is incorrect, you won't get a "red x" like a picture. It won't time out. It will just keep waiting for the object to load.
The other is if the Flash object itself is waiting on data and the path to that data within Flash is incorrect, it will also just hang. These are the two I encounter every time I typo. :-) An example is loading a playlist from an XML file.
A good habit to form: always use full relative paths to your objects. This means you can place the file in **any** directory on your site. For example, if you have flash at
and you have three pages that reference it, one at root, one in products, and one in products/widgets
Developers tend to overthink this, or work on their local computer and stick with it, and use this syntax for the three pages:
All three pages can access this object by beginning with the forward slash. This means "no matter where this page is, start looking for this object at root:"
The down side is when you work on pages locally, Windows and Mac don't know what to do with the beginning slash. This is most likely why the dot-syntax is used and left in pages.
var logo = new SWFObject('\/images\/flash\/my.swf', 'logo-id', '97', '165', '6', '#000000');