Building better code one byte at a time.

How to reveal content behind an Articulate Presenter Web Object

Did you know a Web Object inserted into Articulate Presenter actually sits above the published presentation player?  Because Flash doesn’t have the ability to embed html content, Articulate Presenter will use iframes in combination with CSS to overlay the Web Object seamlessly, with the Flash player window. Layering html documents is a creative solution to this Flash limitation. The image below gives an example of how the published documents are layered.

So why reveal content behind the Web Object?

When attempting to navigate beyond a Quizmaker quiz slide a prompt is issued warning users they must attempt the quiz to advance. This prompt is part of the Flash player embedded into IFrame 1, therefore displayed behind the Web Object (IFrame 2).  Because users are unaware there’s a prompt behind IFrame 2, or more importantly, they are unable to select the OK button on the prompt,  the presentation becomes locked. This will happen in an Articulate Presenter presentation when:

– a Quizmaker quiz is placed anywhere after the Web Object slide
– the quiz properties from Presenter are set to use the following setting:

User may view slides after quiz: After attempting quiz

One workaround to this issue, would be to allow users to view slides after the quiz at any time. If this isn’t an option for you, please read on.

Unload/Reload the Web Object using my webOjectLockFix!

I developed a small flash movie containing some actionscript code that will unload the Web Object to reveal the quiz warning  – “You must attempt the quiz at slide x to advance.” After selecting the OK button from the warning, the Web Object is reloaded.

To implement this fix in your Articulate Presenter projects, please follow the instructions below.

1. Download the webOjectLockFix2.0.zip file.
2. Extract the webOjectLockFix2.0.swf from the zip file.
3. Select the slide in PowerPoint that contains the Web Object.
4. Choose Insert –> Flash Movie from Articulate Presenter.
5. Browse for and select the webOjectLockFix2.0.swf movie and apply the following settings:

– Display in Slide
– Advance to Next Slide: When user clicks next
– Synchronization: Movie plays independently of slide

6. Select the OK button to complete the insert.
7. Select the Flash Movie inserted above and move it off of the slide (this is necessary or the Flash control will show when published)
8. Publish and view the presentation.

Note: The above workaround in not supported by Articulate, and is provided as is. However, I have tested this extensively and found this to work without any issues. There is nothing in the actionscipt code that would interfere with the Articulate content.

I hope this was helpful.

Additional Information and Links

Download: webOjectLockFix.zip webOjectLockFix2.0.zip Updated! 9-26-2010

Articulate Help Document: Articulate Presenter Web Web Objects

27 comments for “How to reveal content behind an Articulate Presenter Web Object

  1. Will Findlay
    September 20, 2010 at 11:38 pm

    Thanks David! This is a great solution. We are creating an elearning module where we alternate numerous times between a slide w/ web object (embedded Brightcove video) and a brief Quizmaker quiz. We wanted to make sure the participant at least attempted the quiz before moving on to the next segment, but we ran into the issue where the prompt would show up behind the embedded video web object.

    Without the webObjectLockFix swf we would have just had to give up on requiring that people attempt the quiz segments, something we didn’t want to do, so I really appreciate that you took the time to figure out how to make this possible!

    • David
      September 21, 2010 at 12:25 am


      I’m pleased to hear this was a viable solution for you. Thanks again for pointing out the error in my Blog instructions.

  2. Brittney
    November 23, 2010 at 5:13 pm

    You are awesome!!!! Thank you very much for solving my problem!

    • David
      November 23, 2010 at 8:32 pm

      I’m glad this helped!

  3. Christy
    January 7, 2011 at 12:03 pm

    Does this workaround also apply for the “Bio” and “Email” buttons that appear behind Engage and Quizmaker interactions?

    • David
      January 7, 2011 at 12:52 pm


      The webObjectFix does not work for the Articulate Presenter Bio or Email Panel that appears behind slides containing Engage interactions or Quizmaker quizzes. Slide levels are handled differently.

      I will consider a fix for this. Thanks for the suggestion.

    • David
      February 8, 2011 at 1:14 pm

      The latest version (webObjectFix2.0), now handles all panels. More on this is outlined in the following link:


  4. February 8, 2011 at 12:46 pm

    Your fix works perfectly. Thanks.

    • David
      February 8, 2011 at 1:08 pm

      That’s great! I’m glad it was useful.

  5. April 20, 2011 at 2:18 pm

    It does not appear to be working with inserted Engage Interactions. When I click on the email & bio button, they still come up behind the interaction. Thanks in advance.

    • David
      April 20, 2011 at 6:06 pm


      That’s correct. This fix is for WebOjects only.
      I could not find a graceful way to unload and reload Engage Interactions or Quizmaker quizzes without affecting the resume data associated with these slide types.

  6. April 25, 2012 at 12:20 pm

    Thanks so much David,

    I could solve my problem with the web objects.

    Greetings from Chile.

    • David
      April 25, 2012 at 12:38 pm


      I’m pleased to hear this worked for you.

  7. Hardy Reyes
    June 27, 2012 at 5:05 pm

    Hi David!

    Do you tried Storyline?

    The same problem with WebObjects, unfortunately “webOjectLockFix2.0” does not work with Storyline …

    • David
      June 27, 2012 at 9:55 pm

      Yes. I’m aware Web Objects work the same way in Storyline. Until an SDK is released, I don’t have any plans to address this.

  8. Nelson
    August 21, 2013 at 12:32 am

    Hi David,

    Many thanks for your webObjectLockFix.swf. I had several PDF files embedded as web objects that were covering up the Articulate player panels and the swf file fixed this issue. Something I noticed now in my published presentation is that if I view a slide that contains a web object and then go to another slide that contains an inserted flash animation with actionscript 2, the slide with the flash animation freezes and after about 10 seconds a message pops up saying that a script is causing Adobe Flash Player to run slowly. Clicking to abort the script doesn’t do anything. If I remove the webObjectLockFix file and republish the presentation the problem goes away, but then I’m back to having covered panels. Any tips or pointers would be greatly appreciated. Thanks again!

    • David
      August 22, 2013 at 7:12 am


      As noted by you, there appears to be a conflict between our actionscripts. Could you share your script with me, so I can check this on my end?

      • Nelson
        August 26, 2013 at 3:59 pm

        Hi David,
        Would you like me to send you the .fla file or just the script? How do I go about sending it to you?

  9. Nelson
    September 2, 2013 at 2:23 pm

    I republished the presentation using the newer version (beta) of the webObjectLockFix and it works perfect! The flash animation no longer freezes after viewing the web object.
    I really want to thank you for taking the time to solve this issue. Your webObjectLockFix is very useful.

    • David
      September 2, 2013 at 8:41 pm

      Thats great! Im glad I was able to help.

      • Erika
        March 3, 2014 at 2:27 pm

        I know you’ve published this a long time ago, but it’s still very useful. I wanted to see if you could help me with a variation of this issue (I’m new to Articulate). I have put together a training course and in one of the slides I’ve inserted a game I made using Flash. I don’t want to have BACK/NEXT buttons showing on that slide, instead I want to use advance to the next slide when users finish my swf game (ideally via AS2 within my Flash file). I’ve done a bunch of tests with no success so far. Are you able to point me in the right direction. Thanks!

  10. Paul
    February 18, 2015 at 4:49 pm

    Hi David,

    Thanks for your post. I have a question for you.

    The WebObjectLockFix works great but there’s an issue I’m having with Web Objects starting over each time I click one of the articulate tabs such as Glossary or Close.

    I inserted a Web Object (index.htm) on a slide which was published with Captivate. Added the WebObjectLockFix to the slide and previewed it. If I click the glossary tab, the glossary comes up in front of the web object but once I close the tab, the web object (index.htm) starts all over again.

    Is there a way you can just pause the web object from playing when the glossary tab is selected. And then resume playing once the glossary tab is closed.

    Thank you.

    • David
      February 18, 2015 at 11:07 pm


      Unfortuantely, the webObjectFix nor the Articulate player have control over the content loaded into the Web Object. You would have to dive into some serious coding magic on your end and develope a way to have the Captivate content pause when the iframe visibility is set to none and start playing again when the visibility is set to visible.

      I hope this helps!

  11. Nancy
    March 18, 2015 at 7:01 pm

    Hi David,

    Thank you for developing the web object fix. Your fix seems like it’s the only one I can find online.

    I’m trying to resolve Captivate from re-starting as well. Following up on the response to Paul’s comment – Is the flash object set to unload frame or is the frame set to be hidden?
    If it’s unloaded, I may not be able to do anything, but, if it’s hidden, I could possibly use JS in Captivate to continue movie.

    I also did some testing and was wondering if you or anyone else have come across other slides not restarting? I have the menubar fix added to slides with Captivate. The slides before the Captivate slides work fine and all is good when I click an attachment on the menu bar. However, on slides after slides where the menu bar fix is, the slide does not restart. It’s actually blank and looks as though, the frame unloaded and I needed to click in the content to select the slide again. After checking each slide, I went back to the beginning and checked the slides that worked before and they stopped working as well.

    I removed the menu bar fix from the Captivate slides and the regular slides are fine again. Any chance you have an updated version that doesn’t affect the rest of the slides?


    • David
      March 19, 2015 at 7:03 pm


      The webObjectFix will set the visibility for the iframe (id=”eLayer1″) that contains the web object to hidden (visibility: hidden;). Let me know if this helps.

Leave a Reply

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