Screenr: Using WebObjects to "carry on" lots of files

Apr 02, 2013

Take a look at this screen recording for a method you can use to consistently attach files and employ them using a relative link (HTML5 and Flash only) within your published output.

This is really cool for bringing in JavaScript libraries or other custom structures you want to use at runtime. Here's the process:

1. Create a folder to contain your "carry-on". 

2. Add an index.html file to this folder. It doesn't need to contain anything.

3. In Storyline, import a WebObject and target your new carry-on folder.

4. Publish the story for Web.

5. Explore the folder structure. Navigate into story_content and WebObjects.

6. Copy the unique folder string for the folder that contains your new carry-on. You'll need this to complete the relative link chain.

7. Back in Storyline, employ the folder structure. For example: "story_content/WebObjects/5nM8Oqq62Th/yourfile.pdf" You can use this to launch with a jump to URL / file or with a hyperlink on text. 

The neat thing about this is the unique ID is created when the WebObject is imported. Unless you reimport it, that unique "5nM8Oqq62Th" folder name stays the same every time you publish. This gives you a consistent reference within your published structure to use whatever files you "carried-on the flight"

20 Replies
Steve Flowers

Hey Brian, 

Are you running the Flash output locally? The Flash Player Security settings will block interaction between the Flash Player and the browser by default. You can get around this by publishing to CD, uploading the published output to a Web server or by adding your publish / testing location to the Flash Player Security Settings Manager whitelist.

Zio Fonta

Many thanks Steve. I would like to load an external javascript file with some javascript functions. Until now, after publishing I used to add that .js file to a new folder manually, then I overwrite also story.html file to add the <script src=""> tag with the link to that file, to load the script in the html page. Can I use this technique to load the .js file with some command, after publishing it into a WebObject folder?


Crystal Woods

While linking in this way works, this doesn't resolve the issue of handing off files. If I create a Storyline course, and I hand the files off to the client, they would then have to publish that file, go find the path to where the linked documents are stored, and copy all the files in there by hand every single time they publish. This is not ideal. I have submitted a request to add a feature that Storyline gathers the files and publishes them with the course, it seems odd that this isn't a feature already. It's not just with handoff to clients, where I am, I may start a file, but someone else will work on it at some point, and they'd have to go through this process too. There really should be a way to hand off the storyline file to anyone, and have all the linked files go with it.

Ashley Terwilliger-Pollard

Hi Crystal, 

What version and update of Storyline are you using?

In Storyline 2 Update 11, we fixed issue where file attachments wouldn't be saved in the Storyline project file prior to publishing. That was for files in the resources tab - and if you include them there you can reference them as a part of the published output using the steps mentioned. 

You'll want to make sure that you are linking to local project files. You'll see that noted here within our best practices article. 

Crystal Woods

I'm using Storyline 2, but I'm not trying to use the built-in resources tab in the player, I'm trying to just link them with jump to url/file in the course itself. When I do them this way, it links to the relative path on my computer, so when I give the storyline file to another developer, none of the PDFs are there because they are still linking to somewhere local on my hard drive.

Crystal Woods

I didn't realize that the resources could be turned off PER SLIDE in the story view, so now that we have got this working, I thought I would post what we did here so that anyone else who is looking for a solution will be able to find it.

  1. In the Storyline file, I created all the course slides with their content, and any link in those slides had a jump to url/file trigger attached to them with the path to the file (PDF in my case) being "story_content/external_files/nameOfPdf.pdf" that I entered manually (not using the file picker).
  2. In the course, I created a blank slide, and in the story view, I turned off the previous and next buttons so that the slide is in the course, but there is no reference to it.
  3. In the story view, for every slide EXCEPT for the blank slide, in the Slide Properties panel under "player features", I selected "custom for the selected slides" and unchecked the resources. (This makes it so that the resources button never shows up in the player, except on the slide that is never seen).
  4. I added all the PDF's that were used in the course to the resources menu in the player.
  5. Published. All links work as they should and the PDF's are stored in the Storyline file so that I can hand it off to another developer.

Hope this helps!


Karuna Reddygari

Thanks Steve and Chrystal for detailed explanation. For my project, I have used web object because I need to include some java script, images inside an HTML file. Using Resources section is also helpful but I do need to show the resource section to the learner for other material and PDFs. I cannot hide the Resources. 

This discussion is closed. You can start a new discussion or contact Articulate Support.