0

在这里我有一个声明:

 <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>

所以现在我想 source: 'Timeline/example_json.json'改用

就像是:

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":""
                }
            }
        ]
    }
}'

但不起作用。我真的不知道究竟是什么探针......请帮忙。

所以这是真正的时间轴插件,这个插件需要 JSON 作为源,但是有没有办法用 Javascript 变量改变源?

4

2 回答 2

1

你写这个的方式,“timeline_config.source”的值是一个字符串,而不是一个“可用的”Javascript对象。

您可能需要使用 JSON.parse() 将字符串转换为对象。所以添加这行代码作为你的第一个 <script> 块的最后一行。

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

或者,正如评论中指出的那样,您可以简单地删除字符串周围的单引号,并且它会由 JS 对象本机。

于 2013-09-22T23:04:46.923 回答
1

尝试删除 ' 字符串分隔符,所以它说

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

这样它是一个 JS 对象而不是一个字符串。

于 2013-09-22T23:07:41.840 回答