Using the Flash ‘Nested Ojects’ method in ASP pages

Occasionally I want to use Flash on a web page. Tragic, but true. I’ve been looking for an accessible, valid method for doing this. There are few candidates. I settled on the ‘Nested Objects’ method. It seemed quick, painless and didn’t require javascript. But there was a hitch…

Active Server Pages error 'ASP 0139' 
Nested Object 
An object tag cannot be placed inside another object tag.  

IIS’s ASP interpreter wouldn’t pass the page with nested <object> tags.

Of course, nothing is ever simple. I’ve configured IIS to serve .htm and .html files as ASP so every page on my site is an ASP page. This may be an odd thing to do but it seemed easier than renaming every page, ~2000 at that time, and creating appropriate redirects. I also couldn’t easily edit out the snippets of ASP from any given page as the entire site heavily relies on DreamWeaver templates and the ASP is not in editable regions.

I needed a simple solution and this is it… use a server-side include.

Put the non-IE <object>… </object> and IE conditional comments section in the include file.

    <!--[if !IE]> <--> 
      <object data="movie.swf" width="320" height="240" 
              type="application/x-shockwave-flash"> 
        <param name="salign" value="lt" /> 
        <param name="quality" value="high" /> 
        <param name="scale" value="noscale" /> 
        <param name="bgcolor" value="#FFFFFF" /> 
        <param name="pluginurl" 
               value="http://www.macromedia.com/go/getflashplayer" /> 
        </object> 
    <!--> <![endif]--> 
 

Put the include reference where the displaced code should go.

      <!--#include file="flash.txt"-->

Job done.

23 thoughts on “Using the Flash ‘Nested Ojects’ method in ASP pages

  1. Thank you! You are a lifesaver!

    I, too, found the JuicyStudio solution, but yours was MUCH easier to comprehend.

    Thanks again!

  2. Thanks for the solution to add to the bag of tricks.
    Here’s another:
    You can just replace the first <object , the one before the IE Conditional, with
    <

    Take care,
    Tim

  3. I didn’t feel the need to give an example as the full code is in the article. I also don’t own any sites that use ASP. I only work on other people’s sites that use ASP and none of them have given their permission for me to link to them.

  4. Hi Sean,

    Would it be possible for you to send me a full example of how this works.

    I have had it working in Firefox, Opera and Safari but I can’t get IE to render it correctly.

    IE displys the the flash file but then won’t parse the rest of my page.

    Thanks,
    Dave.

  5. Dave, it’s pretty straightforward. Paste the code section into a separate file and use an include to include the file.

    I suggest checking your HTML for properly closed tags or similar.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.