Vue登录主页动态背景短视频制作


Posted in Javascript onSeptember 21, 2019

本文实例为大家分享了Vue制作登录主页动态背景短视频的具体代码,供大家参考,具体内容如下

一、HTML代码

<source src="../assets/video/G1s.mp4" type="video/mp4"/>

注:src的路径根据自己的需要改变;

video标签无法自动播放 刷新后无法自动播放;

解决方法:给video标签添加muted属性,可写为muted或完整写法:muted=“muted”

<template>
 <div class="homepage-hero-module">
  <div class="video-container">
  <div :style="fixStyle" class="filter">
   <!--内容-->
  </div>
  <video :style="fixStyle" autoplay loop muted class="fillWidth" v-on:canplay="canplay">
   <source src="../assets/video/G1s.mp4" type="video/mp4"/>
   浏览器不支持 video 标签,建议升级浏览器。
   <source src="../assets/video/G1w.webm" type="video/webm"/>
   浏览器不支持 video 标签,建议升级浏览器。
  </video>
  <div class="poster hidden" v-if="!vedioCanPlay">
   <img :style="fixStyle" src="../assets/video/G1.jpg" alt="">
  </div>
  </div>
 </div>
</template>

二、css代码

<style scoped>
 .homepage-hero-module,
 .video-container {
 position: relative;
 height: 100vh;
 overflow: hidden;
 }
 
 .video-container .poster img{
 z-index: 0;
 position: absolute;
 }
 
 .video-container .filter {
 z-index: 1;
 position: absolute;
 background: rgba(0, 0, 0, 0.4);
 width: 100%;
 }
 
 .fillWidth {
 width: 100%;
 }
</style>

三、JavaScript----代码

name: '  ***  '   自定义

export default {
 name: 'Video',
 data() {
  return {
  vedioCanPlay: false,
  fixStyle: ''
  }
 },
 methods: {
  canplay() {
  this.vedioCanPlay = true
  }
 },
 mounted: function() { //屏幕自适应
  window.onresize = () => {
  const windowWidth = document.body.clientWidth
  const windowHeight = document.body.clientHeight
  const windowAspectRatio = windowHeight / windowWidth
  let videoWidth
  let videoHeight
  if (windowAspectRatio < 0.5625) {
   videoWidth = windowWidth
   videoHeight = videoWidth * 0.5625
   this.fixStyle = {
   height: windowWidth * 0.5625 + 'px',
   width: windowWidth + 'px',
   'margin-bottom': (windowHeight - videoHeight) / 2 + 'px',
   'margin-left': 'initial'
   }
  } else {
   videoHeight = windowHeight
   videoWidth = videoHeight / 0.5625
   this.fixStyle = {
   height: windowHeight + 'px',
   width: windowHeight / 0.5625 + 'px',
   'margin-left': (windowWidth - videoWidth) / 2 + 'px',
   'margin-bottom': 'initial'
   }
  }
  }
  window.onresize()
 }
 }

四、效果演示

由于上传大小限制,只能剪短的gif动画了。

Vue登录主页动态背景短视频制作

五、HTML版

视频呢下载和html版代码在官网最下方:https://coverr.co

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

Javascript 相关文章推荐
被jQuery折腾得半死,揭秘为何jQuery为何在IE/Firefox下均无法使用
Jan 22 Javascript
一个简单的JS鼠标悬停特效具体方法
Jun 17 Javascript
js综合应用实例简单的表格统计
Sep 03 Javascript
调用jQuery滑出效果时闪烁的解决方法
Mar 27 Javascript
简述Jquery与DOM对象
Jul 10 Javascript
javascript中使用未定义变量或值的情况分析
Jul 19 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
Sep 30 Javascript
利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
Dec 07 Javascript
利用Bootstrap实现表格复选框checkbox全选
Dec 21 Javascript
ES6中箭头函数的定义与调用方式详解
Jun 02 Javascript
Vue中的数据监听和数据交互案例解析
Jul 12 Javascript
JS+H5 Canvas实现时钟效果
Jul 20 Javascript
layui table 获取分页 limit的方法
Sep 20 #Javascript
微信小程序用户拒绝授权的处理方法详解
Sep 20 #Javascript
解决layui动态加载复选框无法选中的问题
Sep 20 #Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
Sep 20 #Javascript
layui table复选框禁止某几条勾选的实例
Sep 20 #Javascript
教你如何用Node实现API的转发(某音乐)
Sep 20 #Javascript
使用layui实现树形结构的方法
Sep 20 #Javascript
You might like
一个简单的网页密码登陆php代码
2012/07/17 PHP
Zend Framework教程之Application用法实例详解
2016/03/14 PHP
php+ajax实现异步上传文件或图片功能
2017/07/18 PHP
js操作checkbox遇到的问题解决
2013/06/29 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
JavaScript实现的简单烟花特效代码
2015/10/20 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
javascript之IE版本检测超简单方法
2016/08/20 Javascript
vue.js入门教程之计算属性
2016/09/01 Javascript
jQuery实现在新增加的元素上添加事件方法案例分析
2017/02/09 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
2017/09/27 Javascript
JavaScript实现鼠标滚轮控制页面图片切换功能示例
2017/10/14 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
vue实现form表单与table表格的数据关联功能示例
2019/01/29 Javascript
vue实现购物车列表
2020/06/30 Javascript
vue+canvas实现拼图小游戏
2020/09/18 Javascript
[06:38]DOTA2怒掀电竞风暴 2013Chinajoy
2013/07/27 DOTA
遍历python字典几种方法总结(推荐)
2016/09/11 Python
Python利用splinter实现浏览器自动化操作方法
2018/05/11 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
基于keras输出中间层结果的2种实现方式
2020/01/24 Python
Python 多进程、多线程效率对比
2020/11/19 Python
Python 微信公众号文章爬取的示例代码
2020/11/30 Python
迪梵英国官方网站:Darphin英国
2017/12/06 全球购物
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
美国轻奢时尚购物网站:REVOLVE(支持中文)
2020/07/18 全球购物
意大利网上书店:LaFeltrinelli
2020/06/12 全球购物
EMPHASIS艾斐诗官网:周生生旗下原创精品珠宝品牌
2020/12/17 全球购物
如何写好优秀的创业计划书
2014/01/30 职场文书
设计师个人求职信范文
2014/02/02 职场文书
入团介绍人意见范文
2015/06/04 职场文书
2019预备党员转正申请书模板2篇!
2019/08/07 职场文书
《别在吃苦的年纪选择安逸》读后感3篇
2019/11/30 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL