我包括viostream API JS在我的项目的head
库,这样我就可以在js文件使用对象viostreamPlayer
:如何重新加载外部JavaScript库,而无需重新加载
<head>
...
<script src='https://publish.viostream.com/embed/api'></script>
</head>
我需要调用embed
功能两次在js和没有重新加载页面。但是,第二次使用viostreamPlayer
会导致一些问题。
因此,我想在第二次使用之前重新加载api库。确保viostreamPlayer
对象新鲜并且可以随时使用。
更多细节:
我用backbone.js
加载视频观看页面,并通过后加载JS另一个视频来看,我应该更新的视频内容。这就是为什么我需要拨打embed
两次,这是加载另一个视频。新视频已成功嵌入,但所有事件处理程序均失败。由js加载页面无法重新加载head
。
事件处理程序通过调用on
方法添加viostreamPlayer
:
viostreamPlayer.on('play', function(){})
但其没有工作,当我嵌入第二个视频。这就是为什么我要在调用embed
函数之前寻找确保viostreamPlayer
新鲜的方法。
文档:https://help.viostream.com/hc/en-us/articles/223291607-Embedding-and-using-the-Player-API
干杯
更新
ViostreamPlayer已经更新了API,以便将错误不再存在。
“然而,使用viostreamPlayer第二时间会导致一些问题。”。究竟是什么问题? –
嗨@CharlieFish,我在'More details'中解释过,问题是所有的事件监听器都无法正确设置并失去作用 – Stephen
您是否试过联系他们的支持?看起来像一个付费产品。他们应该提供支持。我不知道为什么你需要重新加载脚本。听起来更像是他们剧本中的一个问题。 –