FlashObject 1.3 Released

I have just released version 1.3 of FlashObject. Changes are as follows:

  • [Changed] When calling FlashObject.write() you can now pass an HTMLElement reference. Previously you needed to pass a string (the Id of the element to write the Flash content to)
  • [Changed] Made changes to the plugin detection routine that would cause a crash in browsers running certain versions of the Flash plugin. Read a comprehensive description of the issue and the fix.
  • [New] You may now specify a specific URL to redirect the user to after they complete an ExpressInstall process. Previously the script would always redirect them to the page the Flash movie was embedded in, but when using a popup window this is not always the best solution. See the ExpressInstall section of the FlashObject page for more information.
  • [New] FlashObject now integrates seamlessly with the Javascript Integration Kit. More information on this is forthcoming in a new blog post.
  • [New] I’ve used Dojo Shrinksafe to strip out the extra space in the flashobject.js file. FlashObject now weighs in at just a hair over 6kb. Super tiny! The FlashObject ‘source code’ (un-shunken Javascript) is included in the FlashObject zip file in the ‘source’ folder. I also made a number of small syntax changes to reduce the size even more.

I’ve updated the FlashObject page to reflect these changes. I recommend that everyone should upgrade if you are using any older version of FlashObject. If you are upgrading from v. 1.2, you can simply replace your flashobject.js file and you should be ready to go. Versions earlier than 1.2, you may need to make minor adjustments to your embed code (see the changes to v. 1.2 for help with that)

UPDATE (1-25-2006): Found a small bug in this latest version that caused the Flash movie to not load on IE 5.01 on PC. The bug has been fixed and the zip/source has been updated. Please update to the latest version if you are using 1.3 and have a lot of users using IE 5.01 (does anyone have a high number of those anymore?). The new version number is 1.3b.

191 thoughts on “FlashObject 1.3 Released

  1. > Geoff said:
    > Are you using it with the ExpressInstall options? Double check to
    > make sure that you don’t have the extra ‘true’ on the end of the constructor.

    That did it, I can’t believe I didn’t see that. Thanks a lot, FlashObject is truly a gem ;)

  2. I am new to FlashObject. The line of code below from an earlier comment…..Where exactly does this code go?? Thanks in advance.

    I added a new feature in FlashObject that will help your exact problem.

    When you embed your movie, add this to the embed:


    fo.setAttribute(“xiRedirectUrl”, “http://www.example.com/yourlaunchpage.html”);

    where ‘yourlaunchpage.html’ is the page that opens the 800×600 window. This way all your users will always see the site how you want them to see it. Just make sure that the url is the absolute URL to your page (the full address).

  3. Ok, I found out where to put that line of code……..guess I should try to read a little closer……:)

    But, After the install it is not redirecting to the page that I put in the fo.setAttribute…..

    Any suggestions?? Thanks.

  4. Im using flash player, but when i output and check the bandwidth profiler on testing my movie, all the content is being loaded and the classes exported on Frame one of my movie, which means the my Preloader, which starts one frame after the express install check, doesnt really work. all the content is being loaded on frame one, which means that the site loads while the player checks for express install and the preloader takes like 2 seconds, which is fine for anyone on a high speed connection, but those that are not must see a black screen forever. Is this accurate? Or am i missing somethign in the way im using the flash object? any help would be appreciated.

  5. This is just how Flash works – if you want your content to load on a frame other than frame 1, you need to specify what frame.

    In your publish settings you can tell Flash to load your classes on any frame you want, and if you are using attachMovie() you can uncheck the ‘export on frame one’ checkbox, and then place your movieclips on the stage on the frame where you want them to load.

    A usual practice would be to place all your exported movieclips on frame 5, and export your classes on frame 5, and then place a preloader on frame 1 that then skips your movie to frame 6 to start playing.

  6. Geoff,
    thanks for the reply, yes i looked into that, but if im using the Express Install function of the flash object, and i export my classes to frame 5, then i cant run the express install on frame one. Is that accurate?

  7. Yes, but in the latest version of FlashObject, the ExpressInstall code is no longer an AS2 class, it’s just an include file. So you can just include it on frame 1.

  8. re: the comment from gjhead earlier – I had a problem with v1.3c with a IE6 that didn’t have flash installed getting exactly the same problem gjhead had described…the alternative gif wasn’t working either.

    Version:6.0.2900.218.xpsp.050622 – 1524 Update Versions:; SP2;

    reverting to 1.2.3 fixed the issue.

  9. Joe: The issues he was having were fixed in version 1.3c (the closing object tag was missing) but even so, it always worked in IE 6. The issue only showed up in older versions of IE on PC. So there should not be any more issues with the code.

    If you are still having issues with v. 1.3c, then please post an example link on the FlashObject mailing list or you can send it directly to me if you like.

  10. Thanks a lot for all your efforts!
    I’m having trouble in safari 2.0.3 (no flash plugin installed) when I click the bypass detection link I get this browser error

    The page “FlashObject embed by Geoff Stearns (express install) @ deconcept” has content of MIME type “application/x-shockwave-flash”. Because you don’t have a plug-in installed for this MIME type, this content can’t be displayed.”

    Shouldn’t I get a redirection to macromedia or a prompt to download the plugin? I’m simply opening the expressInstall.html included in your package.

  11. Nope, it’s behaving as it should.

    The bypass link just tells FlashObject to skip the plugin detection part of the script and try to embed the Flash movie normally. So you are seeing the page as you would if there was no Flash plugin detection.

  12. Hello, I am using FlashObject with a pop-up specific sized window and it was working great. I have not touched any code and tested it again today and now after the flash player installation it is not automatically closing the browser windows (in IE) and redirecting back to that sized window like it has been for the past week…….Any ideas as to why the browser windows are not closing after the install??? Thanks in advance…..

  13. I’m not sure why that would happen. FlashObject doesn’t close the browser windows – the Flash installer does that part, so maybe there is some issue with the installation? Are you using Macromedia’s uninstaller and then installing an older version using their installers?

  14. Thanks for the quick response….

    Yes, I am using Marcomedia’s uninstaller and then installing version 7 using their installers…I have been testing this for the past week with beautiful results until today…..I wish I could send you the code, but this is a project that has not been released yet….I am using the ExpressInstall also….This is very frustrating, I know I am obviously missing something I just can’t figure out what……:(:(

  15. What files should I have in the directory??

    These are the ones I have:

    flashobject.js
    ExpressInstall.as

    Do I need:
    playerProductInstall.as
    playerProductInstall.swf
    or any of the other files from the Flash installation kit???

    Thanks much for your help….

  16. No, you don’t need anything other than the FlashObject script and the expressinstall.as file.

    The way the installer finds the window to close it is by searching the title of the open browser windows. It will look for the one that has ” – Flash Player Installation” appended to the end of it.

    But as I said, once the installation starts, the Flash player installer takes over and the FlashObject script doesn’t do anything else.

  17. I’ve got some problems concerning expressinstall.html. It works fine using IE, but in Firefox (1.5.0.1 – OS: WinXP) it doesnt close and open the Browser window automatically after installation. I have to close Firefox manually. After closing, it opens automatically but directs to the Macromedia Website.

    As it seems that nobody had this problem before, I guess it might be a special problem with my configuration (Firefox) or a problem as i cannot perform a clean uninstall of the Flash plugins (as the provided uninstall_setup.exes from Macromedia get stuck – thats why i just delete the concerning plugin-files). However – its not really important – I just like to know if it works for Firefox (1.5) in general.

    Thanx in advance.

  18. If it works in IE, then you know that the script is doing it’s job correctly…

    I would give the uninstaller some extra time to finish (it’s always slow on my system to at the end) or see if you can find manual uninstall instructions somewhere on macromedia’s site.

    Or if you have access to another computer, test it on a difference system or have a friend test it.

  19. any ideas on how to go about creating a forced silent install of the flash plugin on a clients computer? i know people dont like this but im not concerned with that, its for a client and im not looking for code(if it exists thatd be great) im just looking for what options would exists for such a thing. I have a feeling i can use Javascript and make some changes to the expressinstall class you’ve written and use that to force the install silently.?? any ideas??

  20. It’s not possible.

    The default settings in Windows and OS X will always prompt the user to install new software or require some sort of administrative approval.

  21. hmm, well i know with OSX i can use javascript and applescript to run the install as a command line script, which would hide the prompt, it would be a bit tricky to do but im sure it can be done. im just wondering if anything like that is conceivable with windows? like UNIX command line scripting?

  22. is it possible to show some text like “checking for flash”, while the express install checks. I tried putting it in frame one along with the express install class but it didnt work. I get a really long white screen before anything happens. i would like to put content in there so my viewers know whats happening.

  23. I have problems using the script in the open source content management system Joomla.
    I include the following code as html content:

    
    <script type="text/javascript" src="http://www.xxx.de/flashobject.js"></script>
    <div id="flashcontent">
      This text is replaced by the Flash movie.
    </div>
    <script type="text/javascript">
       var fo = new FlashObject("http://www.xxx.de/movie.swf", "mymovie", "200", "100", "7", "#336699");
       fo.write("flashcontent");
    </script>

    But the only thing what is shown is the text but not the actual flash movie.

    What I am doing wrong. Please help.
    Thanx.
    Stefan

  24. Are you sure you have the correct version of the Flash player installed?

    Your code looks fine to me. If you are still having issues, try sendind a mail to the FlashObject mailing list with a link to your page so others can look at it and see what’s wrong.

  25. First of all, thank’s Geoff for your great work with FlashObject, it’s not only improved the flash detection issues but made mi projects cleaner too.
    I’m working on a project where I want to use a flash drop down menu over the html code (http://test.graphics.cl/aguasdecima/organizacion.php ). It works fine but I’ve got a problem when I want to click on something below the flash div (the left menu for example). I come to the idea of give the FO a small height when there is no drop down activated and make flash to change the height to show the menu. Think it has not the same solution as the visibility-problem one, cause it’s not a div height but a flash object height problem (maybe i’m wrong). Geoff, could you suggest me a way to control the FO height from inside the flash? Thank’s

  26. Re CJ’s
    comment above
    about issues with ExternalInterface:

    I saw a similar problem. I had

    ExternalInterface.addCallback(“play”, this, play);

    and got errors like CJ did, in IE, but not Firefox.

    Remarkably, just by renaming the interface:

    ExternalInterface.addCallback(“xplay”, this, play);

    the problem went away. I believe there is some kind of name-scoping issue in IE. There are other things called “play” in my page (a Javascript function, for instance), though whether they are causing the problem, I am not sure. In any case, it might pay to choose unique names for your ExternalInterface names.

  27. hi
    I’ve just install new player version 8,0,24,0 and flashobject don’t work ???????
    the update is recommend by macromedia !!!!

  28. I’ve updated as well and it still works fine for me.

    Double check your pages to be sure your code is set up correctly.

    You can also check the FlashObject example page and see if the Flash movie there shows up. If it doesn’t, there is probably something wrong with your Flash player install. In which case you should download the Flash Player uninstaller and remove your Flash plugin and then reinstall it.

  29. Will fo.write() replace everything inside of the specified div?

    I’m having issues where my alternate content, which is styled and lives inside of a subdiv of my flash content div, seems to be overwriting the write process, and the flash content never actually shows up on the page.

    Here’s my code:


    <div id="flashcontent">
    <div align="center">
    <h1>Client Name</h1>
    <p><b>This site requires the latest versions of<a target="_blank" href="http://www.macromedia.com/go/getflashplayer">Macromedia's Flash Player</a>.<br />Please download it now.</b><br /><br />Or, if you believe you already have the current Flash player installed, <a href="/?detectflash=false">click here.</a></p>
    </div>
    </div>

    And the FO:

    <script type="text/javascript">
    // < ![CDATA[
    var fo = new FlashObject("base.swf", "base", "100%", "100%", 8, "ECE8E5");
    fo.addParam("scale", "noscale");
    fo.addParam("menu", "false");
    fo.write("flashcontent");
    // ]]>
    </script>

    file is included on the page, so all I can assume is that the script doesn’t like subdivs inside of the source it overwrites…?

  30. It should be fine – when the FlashObject script writes the flash content, it replaces whatever is in the div.

    I don’t know of anything that would break that, but if you want more help, try posting a link to the FlashObject mailing list for some help.

  31. Nevermind, it wasn’t working locally, but worked fine once it was live on the server.
    iD10t error ;)

  32. Thanks for the quick response.
    The is the first problem I’ve ever had with FlashObject (which is awesome), and it wasn’t even a problem!

  33. Hi Geoff,
    When trying to open fo.tester.fla under FlashMX 2004 pro : file format unknown
    I suppose it must be for version 8… which version of FlashObject has fo.tester openable with MX2004
    and where can I download it?
    Thanks

  34. I stopped providing it in MX2004 – since you really only need that file to implement ExpressInstall, it made sense to require Flash 8 to edit it (yes, I know you can upgrade from 6.0.65 to 7, but it’s not worth the hassle)

    Either download the 30 day trial from Adobe, or have a friend convert it?

  35. I get a forbidden mesage when I try to access my Expressinstall.html file on the web server, though locally it runs fine. Any ideas ?

  36. Hello, I’ve come across an issue in several different instances of using FO where I’m unable to load jpeg files into the movie when the movie is embedded with FO. When I use other methods the movie loads the jpegs as normal, indeed simply loading the swf file into any modern browser also lets the movie load the jpgs normally. Any idea why this isn’t working with FO? Thanks!

  37. Paul: I’m not sure – have you tested ExpressInstall using my test page?

    Rich: I’ve never had any issues with that – nearly every Flash site that uses FlashObject probably loads images and other data.

    If you can’t figure it out, feel free to join the FlashObject mailing list and post a URL to your pages that are having problems so we can look at them.

  38. Hi – like many others already have done can I just say thanks for what is a fantastic piece of code, I have only just started to use it in my projects and have to say its a god send!

    I’m not a javascript wizard but, I just had an idea for something that might be a useful addition to the flash object. I’m currently looking using timelines within flash movies to create context sessitive menu systems and creating the same menus for alternative content in the same space provided by the html div tag that holds the flash movie is proving to be a little impractical. I just thought that a method within the flash object that strips the information out of a div tag when flash is found on the users machine without adding a flash movie might be a useful feature. I could do someting similiar now by adding an empty flash movie, but I thought this other way might be a cleaner way to do it.

    What you think?

  39. Normally you just put your alternate content in the same div, but I suppose if you wanted to write your own little code that does whatever you want if the Flash Player is installed, then you could do that by checking for the user’s installed version.

    You can use the code on this page to whip something up.

    In the future, I think i’ll have fo.write() return true or false depending on whether the Flash content was written or not to make stuff like this a little easier.

  40. I have the same problem as SuPplant3r above:
    I get the error “operation aborted” when my flash object loads in explorer? The site loads in the background fine, but you cannot access it because of the above error. This does not happen with Netscape, Mozilla or Opera browsers.
    I am detecting for Flash 7 and it’s only in IE. The browser doesn’t crash it just won’t allow me to see the content after I click the ‘OK’ button in the error prompt.
    Any ideas would be much appreciated.
    Thanks!

  41. The “Operation Aborted” error usually only happens if you are trying to call fo.write() before you close the div that holds your Flash content.

    You need to close the div, *then* write the Flash content into it.

    If this doesn’t fix the problem, post an example url/files to the FlashObject mailing list for more help.

  42. Hi, I want to use your ‘flashobject’ however when I used to embed flash the old dreamweaver way, I could be able to edit the properties – ‘wmode / transparent’.
    I need to do this for my main meny. How do I achieve the same effect using this code?

    Many thanks

    Doug

  43. Regarding the ‘Operation Aborted’ error: I found an error in my html of all things, so to all that see this error I recommend vigorously checking all the code in your file first, as I should have done. everything works now. sorry ’bout that.
    FlashObject rules!
    jd

Comments are closed.