I had a JavaScript pull-down menu that overlapped with a Flash movie. No matter what z-index I set, the menu always rendered behind the Flash content. Classic problem.
The fix is to set wmode to transparent on both the <object> and <embed> tags:
<object ...>
<param name="wmode" value="transparent">
<embed ... wmode="transparent"></embed>
</object>
This tells the Flash player to respect the browser’s stacking context instead of rendering in its own window layer. The menu displays correctly over the Flash movie after that.