米
心情
所有
图集
登录
搜索
原创
序列图片实现视频播放效果实例代码演示
米醋儿
发布于:2020-03-28
移动端对video标签支持不好 ``` CSS代码: .container { width: 256px; height: 464px; margin: auto; background-color: #000; position: relative; } .container > img { position: absolute; width: 100%; height: 100%; } .loading { position: absolute; height: 8px; width: 150px; border: 1px solid #eee; background: linear-gradient(to top, #eee, #eee); background-size: 0 100%; transition: background-size .1s; left: 0; top: 0; right: 0; bottom: 0; margin: auto; } .loading::before { content: attr(data-percent)'%'; position: absolute; left: 0; top: -1.5em; font-size: 12px; color: #eee; } HTML代码: <div id="container" class="container"> <span id="loading" class="loading" data-percent="0"></span> </div> JS代码: var urlRoot = './thumbs/'; var indexRange = [1, 47]; var maxLength = indexRange[1] - indexRange[0] + 1; // loading var eleContainer = document.getElementById('container'); var eleLoading = document.getElementById('loading'); // 存储预加载的DOM对象和长度信息 var store = { length: 0 }; // 图片序列预加载 for ( var start = indexRange[0]; start <= indexRange[1]; start++) { (function (index) { var img = new Image(); img.onload = function () { store.length++; // 存储预加载的图片对象 store[index] = this; play(); }; img.onerror = function () { store.length++; play(); }; img.src = urlRoot + index + '.jpg'; })(start); } var play = function () { // loading进度 var percent = Math.round(100 * store.length / maxLength); eleLoading.setAttribute('data-percent', percent); eleLoading.style.backgroundSize = percent + '% 100%'; // 全部加载完毕,无论成功还是失败 if (percent == 100) { var index = indexRange[0]; eleContainer.innerHTML = ''; // 依次append图片对象 var step = function () { if (store[index - 1]) { eleContainer.removeChild(store[index - 1]); } eleContainer.appendChild(store[index]); // 序列增加 index++; // 如果超过最大限制 if (index <= indexRange[1]) { setTimeout(step, 42); } else { // 本段播放结束回调 // 我这里就放一个重新播放的按钮 eleContainer.insertAdjacentHTML('beforeEnd', '<button onclick="play()">再看一遍英姿</button>'); } }; // 等100%动画结束后执行播放 setTimeout(step, 100); } }; ```
注:原创不易,转载请注明出处(
http://www.micuu.com/new/476.html
),本站所有资源来源于网络收集,如有侵权请联系QQ245557979进行清除。
最后修改与 2022-02-22
上一篇:
php利用endroid/qr-code+Intervention Image生成带二维码加文字的海报实例
下一篇:
【稳定】windows系统激活破解工具,特别好用HEU KMS Activator v19.6.0
留言反馈
请先登录
问题反馈渠道,如有软件无法下载或者其他问题可反馈。【由于某种原因,目前留言不展示】
用户需要登录后才能留言反馈
立即留言
珍藏视频
10分钟高效燃脂
30天高效瘦脸操
5分钟缓解颈椎操
友人
微博
全民K歌
唱吧
今日头条
悠悠网
科技小锅盖
彼岸桌面
阮一峰
laravel社区
V2ex
掘金
更多>