drTesla
drTesla

Reputation: 31

Use javascript variable instead json file

here I have a declaration:

 <div id="timeline-embed"></div>
      <script type="text/javascript">
        var timeline_config = {
         width: "100%",
         height: "100%",
         debug: true,
         rows: 2,
         source: 'Timeline/example_json.json'
        }
      </script>
      <script type="text/javascript" src="Timeline/compiled/js/storyjs-embed.js"></script>

so now I want to instead source: 'Timeline/example_json.json' to use

something like:

source: '{
    "timeline":
    {
        "headline":"Sh*t People Say",
        "type":"default",
        "text":"People say stuff",
        "startDate":"10/4/2011 15:02:00",
        "date": [
            {
                "startDate":"10/4/2011 15:10:00",
                "endDate":"10/4/2011 15:55:00",
                "headline":"prvo",
                "text":"<p>dddddddddddddddd dd</p>",
                "asset":
                {

                    "caption":"yessss"
                }
            },
            {
                "startDate":"10/4/2011 17:02:00",
                "endDate":"10/4/2011 18:02:00",
                "headline":"drugo da da",
                "text":"<p>In true political fashion, his character rattles off common jargon heard from people running for office.</p>",
                "asset":
                {
                    "media":"http://youtu.be/u4XpeU9erbg",
                    "credit":"",
                    "caption":""
                }
            }
        ]
    }
}'

but doesn work. I really dont know what is probem exactly... Please help.

So this is verite Timeline plugin and this plugin need JSON as source, but is there any way to change source with Javascript variable?

Upvotes: 0

Views: 407

Answers (2)

providencemac
providencemac

Reputation: 632

The way you have this written, the value of "timeline_config.source" is a String, not a "usable" Javascript object.

You may need to convert the string to an object using JSON.parse(). So add this line of code as the last line of your first < script > block.

timeline_config.source = JSON.parse(timeline_config.source)

Alternatively, as pointed out in the comments, you can simply remove the single quotes around the string, and it will natively by a JS Object.

Upvotes: 1

mwfire
mwfire

Reputation: 1667

Try removing the ' string delimiter, so it says

source: {
     "timeline": { ... }
},

This way it is a JS object and not a string.

Upvotes: 1

Related Questions