Youtube api 重新加载youtube api
我需要加载、销毁和重新加载,但不幸的是,重新加载无法工作 我执行了以下步骤:Youtube api 重新加载youtube api,youtube-api,Youtube Api,我需要加载、销毁和重新加载,但不幸的是,重新加载无法工作 我执行了以下步骤: 我加载了Youtube上传小部件,如howto-works中所述 我从网络摄像头中捕获视频-有效 我使用小部件销毁小部件。销毁()-有效 我将脚本元素从HTML中删除-works 我像步骤1一样重新加载API-什么都没有发生 为什么不工作?onyoutubeiframeapiredy()通过外部脚本加载window.YT.*接口时,每页只调用一次。从页面中删除元素,然后重新添加它不会再次触发onYouTubeIfram
为什么不工作?
onyoutubeiframeapiredy()
通过外部脚本加载window.YT.*
接口时,每页只调用一次。从页面中删除
元素,然后重新添加它不会再次触发onYouTubeIframeAPIReady()
如果您想销毁包含上载小部件的
,然后在新的
中创建一个新的小部件,那么这应该可以工作,但您不必第二次从onyoutubeiframeapiredy()
回调中执行window.YT.UploadWidget()
此时已可用,因此可以从代码中的任何位置直接使用该接口。OnyoutubeiFrameApiredy()在加载YouTube API时只调用一次。答案是在YouTube的第2步中添加另一项检查:
if (typeof tag === "undefined") {
// if first run load the YT API which will call the correct functions.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
} else {
// if YT api already loaded, we need to call the function.
onYouTubeIframeAPIReady();
}
祝你好运。你需要提供你尝试过的内容和结果的详细信息。就目前而言,你是在说“事情对我不起作用,请看看你的水晶球,告诉我为什么”。我尝试了步骤1-5,步骤5的结果是什么都没有发生(如我在帖子中所描述的)。我期望重新加载API并插入iframe,但这不会发生。没有错误消息,什么都没有。您要删除哪个脚本元素?位于
http://www.youtube.com/iframe_api
提供YT.*API的?您能指出一个实时代码示例(jsfiddle.net或其他)吗?在步骤4中,我删除了iframeapi和widgetapi,以便在步骤5中重新加载它们。您可以在上找到实时代码示例。重新加载在toggleWebcam()函数中进行。同时,我可以通过直接将IFRAME而不是DIV占位符放在HTML页面中来实现它。这是一个很好的解决方法,还是会在API发生变化时立即中断?是的,这解决了我的问题,并按预期工作。非常感谢。你是我的英雄!这正是问题所在。我花了几个小时才弄明白问题出在哪里。非常感谢!