【发布时间】:2017-09-28 00:04:31
【问题描述】:
我正在创建一个新的视频元素,然后想在视频开始加载时显示一个微调器,直到它获得第一帧,然后删除该元素。以下是我的代码 -
var videoElem, src;
videoElem = document.createElement("video");
videoElem.src = src;
var preloader = '<div class="preloader-wrapper"><div class="spinner-layer"><div class="circle-clipper left"><div class="circle"></div></div>' + '<div class="gap-patch"><div class="circle"></div></div><div class="circle-clipper right"><div class="circle"></div></div></div></div>';
//renders when video has started loading - show preloader
videoElem.addEventListener("loadstart", function () {
console.log("Video has started loading...!");
//jQuery(preloader).insertBefore(videoElem); //works fine but I don't know how to delete the preloader in the loadeddata eventlistener
videoElem.appendChild(preloader);
});
//renders when is loaded - delete preloader
videoElem.addEventListener("loadeddata", function () {
console.log("Video has loaded successfully!");
videoElem.removeChild(preloader);
});
appendChild 和 removeChild 不起作用。给出错误:
未捕获的类型错误:无法在“节点”上执行“removeChild”:参数 1 在 HTMLVideoElement.eval 中不是“节点”类型
【问题讨论】:
标签: javascript video createelement