我已使用Ziggeo API将视频嵌入到我的网站中。我正在使用Handlebars将令牌填充到ziggeo播放器:
<ziggeo id="zideo_player" ziggeo-width="560" ziggeo-height="315" ziggeo-playonclick="true" ziggeo-video={{this.token}}>
</ziggeo>
我知道令牌已经到达那里因为我可以在检查员中看到它。
奇怪的是,当我进入检查员并从ziggeo更改为ziggeoplayer时,视频将显示,但是当我将这些更改推送到Heroku时,它再次没有显示。
就好像玩家在收到令牌之前加载,只有通过更改名称才可以重新发送令牌。
答案 0 :(得分:0)
v1和v2都适用于Heroku。
Benjamin,您是否可以尝试使用JS代码替换HTML嵌入代码,如果真的需要,可能会延迟。
例如JS中相同的代码:
L = [('abc',10),('def',15),('ghi',10),('abc', 12),('xyz',100)]
print("Sorted by Value Descending",[i[0] for i in sorted(L, key=lambda k: k[1], reverse=True)][:10])
只有在Ziggeo系统加载并准备就绪后才会触发。这意味着它在DOM准备好并加载页面后触发,因此应该在<script>
//ZiggeoAPI will work only with v1-rXY/ziggeo.js v2- will require v2 app to be created and code would look just a bit different
ZiggeoApi.Events.on("system_ready", function() {
var player = new ZiggeoApi.V2.Player({
element: document.getElementById("your_element_ID"),
attrs: {
width: 560,
height: 315,
theme: "modern",
themecolor: "red",
playonclick: true,
video: "{{this.token}}"
}
});
player.activate();
});
</script>
可用之前触发。
答案 1 :(得分:0)
事实证明这是一个异步问题。该视频正在尝试加载,然后才能从Ziggeo的API发送和接收信息。为了解决这个问题,我使用了一个单独的js文件,然后在加载文档后附加了视频信息。
经过深思熟虑,我也许还可以通过将Ziggeo API信息放置在index.handlebars文件而不是头部的主体底部来解决此问题。自从以上技巧成功以来,我没有机会尝试这种方法,但是如果可以,看起来可能会更干净。