视频广告脚本

问题描述

我正在为视频广告创建一个 js 文件并在其中使用许多脚本,这些脚本直接在 html 中使用时可以完美运行,但是从外部(在 javascript 文件中)加载它们并不总是有效, 由于有时会出现一些错误,例如无法读取未定义的属性 getTech / registerPlugin,否则会出现 player.ima 不是函数

请指导我找出此错误的可能根本原因/解决方案。

代码片段:

`var script1 = document.createElement('script');
script1.src = "//imasdk.googleapis.com/js/sdkloader/ima3.js";
document.getElementsByTagName('head')[0].appendChild(script1);
script1.onload = sc1();

function sc1() {
sc1_loaded=true;
}

var script2 = document.createElement('script');
script2.src = 
"https://cdn.exmarketplace.com/bidder/video/video.min.js";
document.getElementsByTagName('head')[0].appendChild(script2);
script2.onload = sc2();

function sc2() { //...
sc2_loaded=true;
}`

我还添加一个函数来检查脚本加载,结果显示为 true。

解决方法

script1.onload = sc1() 将立即执行 sc()1 并设置 sc1_loaded=true,因此这不会跟踪脚本是否已加载。改用 script1.onload = sc1