在HTML5中如何通过video上传预览图片和视频
发表于:2024-09-30 作者:千家信息网编辑
千家信息网最后更新 2024年09月30日,这篇文章主要为大家展示了"在HTML5中如何通过video上传预览图片和视频",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"在HTML5中如何通过video
千家信息网最后更新 2024年09月30日在HTML5中如何通过video上传预览图片和视频
这篇文章主要为大家展示了"在HTML5中如何通过video上传预览图片和视频",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"在HTML5中如何通过video上传预览图片和视频"这篇文章吧。
当一收到上传图片视频并可以动态设置视频显示的海报帧的需求时,主要想的是怎么样解析视频并获取保存每帧的图片,百度出来的大多是类似下面这种需要播放video并点击截图的,或者是用php ffmpeg扩展,跟需求不一致,有点抓狂了,然后就先做了视频图片的预览功能,进而对设置海报帧换了种思路,通过输入设置video开始播放的时间,取消自动播放和控制条,这样用户看到的就是一张图片
/*预览*/ $('.qtuploader__items').on('click', '[name="viewVideoPicBtn"]', function() { var parent = $(this).closest('.qtab__page'); var video = $(this).closest('.qtuploader__itemsbd').find('video'); var srcStr = '', htmlStr = ''; if($(this).siblings('.qtuploader__picinputbox').hasClass('is-error')){ $.fn.toast({ 'parentDom': parent, 'classes': 'isorange', 'top': '0', 'spacing': 0, 'toastContent': '请设置正确范围的海报帧', 'autoHide': 3000, 'position': { 'top': '5px', 'left': '50%' } }); return; } if (video.length > 0) { var thumbHeight = setSize(video)[0]; var thumbWidth = setSize(video)[1]; srcStr = video.attr('src'); htmlStr = ''; } parent.append(htmlStr); parent.find('.qtuploader__view video')[0].currentTime = $(this).siblings('.qtuploader__picinputbox').find('.qtuploader__picinput').val(); parent.find('.qtuploader__view').fadeIn(); }); /*设置海报帧预览时间*/ $('.qtuploader__items').on('keyup', '.qtuploader__picinput', function() { var parent = $(this).closest('.qtuploader__picinputbox'); var video = $(this).closest('.qtuploader__itemsbd').find('video'); var strVal = $.trim($(this).val()); console.log(strVal) if (strVal == '') { parent.addClass('is-error'); parent.find('.qverify__font').text('请设置海报帧'); } else if (!(/^[0-9]*$/.test(strVal))) { parent.addClass('is-error'); parent.find('.qverify__font').text('请输入数字'); } else if (video.length > 0 && strVal > video[0].duration) { parent.addClass('is-error'); parent.find('.qverify__font').text('不超过(' + video[0].duration + ')'); console.log('111---' + video[0].duration) } else { parent.removeClass('is-error'); parent.find('.qverify__font').text('请设置海报帧'); } }) /*关闭预览*/ $(document).undelegate('.qtuploader__mask', 'click'); $(document).delegate('.qtuploader__mask', 'click', function() { $(this).closest('.qtuploader__view').fadeOut('normal', function() { $(this).closest('.qtuploader__view').remove(); }) }) /*设置预览大小*/ function setSize(element) { var thumbWidth = 0, thumbHeight = 0, arr = []; var winWidth = $(window).width(), winHeight = $(window).height(); var imgWidth = element.width(), imgHeight = element.height(); if (imgWidth > imgHeight) { thumbHeight = parseInt(winHeight - 200); thumbWidth = parseInt((1920 * thumbHeight) / 1080); } else { thumbHeight = parseInt(winHeight - 200); thumbWidth = parseInt((1080 * thumbHeight) / 1920); } arr.push(thumbHeight, thumbWidth) return arr; }
以上是"在HTML5中如何通过video上传预览图片和视频"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
图片
视频
海报
内容
篇文章
时间
需求
学习
帮助
输入
一致
功能
动态
大小
就是
思路
截图
数字
易懂
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
局域网维护及网络安全
宁波成美网络技术有限公司
湖北武汉云店网络技术有限公司
服务器 硬件备份
软件开发和硬件开发有年龄限制吗
赴日软件开发cobol
维盟网络技术
迅捷162c改无线打印服务器
学习网络安全是履行什么义务
服务器空岛的增强工作台怎么做
部队网络安全清理清查情况
服务器能耗要求
魔兽怀旧服务器怎么玩
网络安全在职博士
网络技术人员年终总结演讲
杭州滨江区做软件开发的公司
ado不同数据库更新表
河南省大学生网络安全大赛
电脑网络技术最早出现时间
代理服务器被授权
直链数据库
山东济南市浪潮存储服务器服务
域控服务器经常闪
最终幻想14水晶塔服务器
网络技术基础的定义分类
软件开发属于五行中哪个行业
app控制软件开发
杨某几年内不得从事网络安全管理
网络技术人员年终总结演讲
单机 数据库软件