2010年12月22日 星期三

Using the Flash ‘Nested Ojects’ method in ASP pages

資料來源:http://seanys.com/2007/09/10/asp-flash-nested-objects/


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.

其他參考資料:

SWFObject FAQ:http://code.google.com/p/swfobject/wiki/faq
Object Paranoia:http://juicystudio.com/article/object-paranoia.php

沒有留言: