vue实现移动端input上传视频、音频


Posted in Javascript onAugust 18, 2020

vue移动端input上传视频、音频,供大家参考,具体内容如下

html部分

<div class="title">现场视频</div>
 <div class="upLoad">
  <label for="pop_video" id="labelr">
  <video id="videoId" controls width="100%"></video>
  <input style="display:none;" id="pop_video" type="file" accept="video/*" capture="camcorder" v-on:change="getVideo(event, '2')" name="fileTrans" ref="file" value="">
  <div class="inputVideo">上传视频</div>
  </label>
 </div>
 <div class="title">现场音频频</div>
 <div class="upLoad">
  <label for="pop_audio" id="labelr">
  <audio id="audioId" controls width="100%"></audio>
  <input style="display:none;" id="pop_audio" type="file" accept="audio/*" capture="camcorder" v-on:change="getAudio(event, '2')" name="fileTrans" ref="file" value="">
  <div class="inputAudio">上传音频</div>
  </label>
</div>

js部分

getVideo (ev, typer) {
  let taht = this
  //获取上传文件标签
  let filesId = document.getElementById('pop_video');
  //获取音频标签
  let videoId = document.getElementById('videoId')
  //把当前files[0]传给getFileURL方法, getFileURL方法对其做一处理
  let url = this.getFileURL(filesId.files[0])
  if (url) {
  //给video标签设置src
  videoId.src = url
  }
  let formData = new FormData();
  formData.append("file", filesId.files[0]);
  upload(this.token, formData).then(res => {
  console.log(res)
  if (res.data.code === 0) {
   this.videoURL = res.data.data.url
  }
  })
  console.log(url)
 },
 getAudio (ev, typer) {
  let taht = this
  //获取上传文件标签
  let filesId = document.getElementById('pop_audio');
  //获取音频标签
  let audioId = document.getElementById('audioId')
  //把当前files[0]传给getFileURL方法, getFileURL方法对其做一处理
  let url = this.getFileURL(filesId.files[0])
  if (url) {
  //给video标签设置src
  audioId.src = url
  }
  let formData = new FormData();
  formData.append("file", filesId.files[0]);
  upload(this.token, formData).then(res => {
  console.log(res)
  if (res.data.code === 0) {
   this.audioURL = res.data.data.url
  }
  })
  console.log(url)
 },
 getFileURL (file) {
  let getUrl = null
  if (window.createObjectURL != undefined) {
  //basic
  getUrl = window.createObjectURL(file)
  } else if (window.URL != undefined) {//window.URL 标准定义
  //mozilla(firefox)
  //获取一个http格式的url路径,这个时候就可以设置<img>中的显示
  getUrl = window.URL.createObjectURL(file)
  } else if (window.webkitURL != undefined) {//window.webkitURL是webkit的内核
  //webkit or chrome
  getUrl = window.webkitURL.createObjectURL(file)
  }
  return getUrl 

  //video 标签的 duration属性,获取当前视频的长度
  // let duration = videoId.duration
  // if (Math.floor(duration) > 60) {
  // that.layer.msg('视频不能大于60秒')
  // } 
 },

css部分

#inspect .upLoad {
 background-color:#fff;
 /* height: 1.5rem; */
 text-align: left;
 padding: 0.3rem;
}

#inspect .inputVideo {
 background-color: #00cc66;
 color: #fff;
 font-size: 0.32rem;
 width: 30%;
 height: 0.8rem;
 line-height: 0.8rem;
 border-radius: 0.4rem;
 text-align: center;
 margin: 0 auto; 
}

#inspect .inputAudio {
 background-color: #5cadff;
 color: #fff;
 font-size: 0.32rem;
 width: 30%;
 height: 0.8rem;
 line-height: 0.8rem;
 border-radius: 0.4rem;
 text-align: center;
 margin: 0 auto; 
}

效果图

vue实现移动端input上传视频、音频

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

更多精彩内容请参考专题《ajax上传技术汇总》,《javascript文件上传操作汇总》和《jQuery上传操作汇总》进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用js实现下载远程文件并保存在本地的脚本
May 06 Javascript
两个比较有用的Javascript工具函数代码
Feb 17 Javascript
jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码
Apr 27 Javascript
js调试工具Console命令详解
Oct 21 Javascript
js+css实现有立体感的按钮式文字竖排菜单效果
Sep 01 Javascript
jQuery实现的登录浮动框效果代码
Sep 26 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
Jan 27 Javascript
javascript判断firebug是否开启的方法
Nov 23 Javascript
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
Apr 22 Javascript
Vue 列表上下过渡效果的实例代码
Jun 25 Javascript
CKEditor扩展插件:自动排版功能autoformat插件实现方法详解
Feb 06 Javascript
jquery实现上传图片功能
Jun 29 jQuery
React冒泡和阻止冒泡的应用详解
Aug 18 #Javascript
JavaScript数组排序的六种常见算法总结
Aug 18 #Javascript
js实现简单扫雷
Nov 27 #Javascript
基于JavaScript实现大文件上传后端代码实例
Aug 18 #Javascript
javascript实现扫雷简易版
Aug 18 #Javascript
详解Vue的组件中data选项为什么必须是函数
Aug 17 #Javascript
Openlayers实现扩散的动态点(水纹效果)
Aug 17 #Javascript
You might like
常用的PHP数据库操作方法(MYSQL版)
2011/06/08 PHP
PHP实现自动登入google play下载app report的方法
2014/09/23 PHP
php邮箱地址正则表达式验证
2015/11/13 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
2016/07/06 PHP
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
js捕获鼠标右键菜单中的粘帖事件实现代码
2013/04/01 Javascript
jQuery图片特效插件Revealing实现拉伸放大
2015/04/22 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
jQuery使用deferreds串行多个ajax请求
2016/08/22 Javascript
jQuery使用animate实现ul列表项相互飘动效果示例
2016/09/16 Javascript
详解Nodejs基于mongoose模块的增删改查的操作
2016/12/21 NodeJs
微信小程序用户自定义模版用法实例分析
2017/11/28 Javascript
在vue-cli搭建的项目中增加后台mock接口的方法
2018/04/26 Javascript
Javascript中弹窗confirm与prompt的区别
2018/10/26 Javascript
深入解读Node.js中的koa源码
2019/06/17 Javascript
Python获取脚本所在目录的正确方法
2014/04/15 Python
深入讲解Python编程中的字符串
2015/10/14 Python
Python中shutil模块的常用文件操作函数用法示例
2016/07/05 Python
python正则分析nginx的访问日志
2017/01/17 Python
TensorFlow实现Softmax回归模型
2018/03/09 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
Python基于jieba, wordcloud库生成中文词云
2020/05/13 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
浅谈Python __init__.py的作用
2020/10/28 Python
Python数据模型与Python对象模型的相关总结
2021/01/26 Python
Django实现简单的分页功能
2021/02/22 Python
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
Intersport西班牙:在线体育商店
2019/11/06 全球购物
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
农业大学毕业生的个人自我评价
2013/10/11 职场文书
给老婆的保证书范文
2014/04/28 职场文书
2014年度思想工作总结
2014/11/27 职场文书
2014年预算员工作总结
2014/12/05 职场文书
检讨书格式
2015/01/23 职场文书
python 开心网和豆瓣日记爬取的小爬虫
2021/05/29 Python
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android