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 相关文章推荐
extjs render 用法介绍
Sep 11 Javascript
node.js中的path.resolve方法使用说明
Dec 08 Javascript
js数组常见操作及数组与字符串相互转化实例详解
Nov 10 Javascript
VUEJS实战之修复错误并且美化时间(2)
Jun 13 Javascript
JavaScript 数组的深度复制解析
Nov 02 Javascript
BootStrap CSS全局样式和表格样式源码解析
Jan 20 Javascript
详解js的异步编程技术的方法
Feb 09 Javascript
JS排序之冒泡排序详解
Apr 08 Javascript
简述jQuery Easyui一些用法
Aug 01 jQuery
vue中的mvvm模式讲解
Jan 31 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
May 21 Javascript
OpenLayers3实现地图显示功能
Sep 25 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
推荐文章系统(一)
2006/10/09 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
2013/06/27 PHP
使用php语句将数据库*.sql文件导入数据库
2014/05/05 PHP
PHP SplObjectStorage使用实例
2015/05/12 PHP
CI框架常用函数封装实例
2016/11/21 PHP
$(document).ready(function() {})不执行初始化脚本
2014/06/19 Javascript
ECMAScript 5中的属性描述符详解
2015/03/02 Javascript
Bootstrap每天必学之前端开发框架
2015/11/19 Javascript
JavaScript性能优化之小知识总结
2015/11/20 Javascript
微信jssdk在iframe页面失效问题的解决措施
2016/03/03 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
AngularJS基础 ng-href 指令用法
2016/08/01 Javascript
DOM 事件的深入浅出(一)
2016/12/05 Javascript
BootStrap 图标icon符号图标glyphicons不正常显示的快速解决办法
2016/12/08 Javascript
微信小程序中使元素占满整个屏幕高度实现方法
2016/12/14 Javascript
微信小程序 css使用技巧总结
2017/01/09 Javascript
vue实现商城上货组件简易版
2017/11/27 Javascript
在React项目中使用Eslint代码检查工具及常见问题
2018/10/10 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
Node.js学习教程之Module模块
2019/09/03 Javascript
python字符串中的单双引
2017/02/16 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
对pandas的行列名更改与数据选择详解
2018/11/12 Python
python+opencv像素的加减和加权操作的实现
2019/07/14 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
2019/07/23 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
CSS3 transform的skew属性值图文详解
2014/07/21 HTML / CSS
Shopee新加坡:东南亚与台湾电商平台
2019/01/25 全球购物
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
Hobbs官方网站:英国奢华女性时尚服装
2020/02/22 全球购物
2015年毕业生自荐信范文
2015/03/24 职场文书
员工担保书范本
2015/09/22 职场文书
新学期新寄语,献给新生们!
2019/11/15 职场文书
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android
TypeScript中条件类型精读与实践记录
2021/10/05 Javascript
Python+OpenCV实现图片中的圆形检测
2022/04/07 Python