vue中封装一个倒计时
<template>
<div class="countDownBox">
<div class="row resetStyle">
<div class="col col-xs-6 resetStyle height58">
<p style="line-height:29px;text-align:left;text-indent:20px;">Conference</p>
<p style="line-height:29px;text-align:left;text-indent:20px;">starts in</p>
</div>
<div class="col col-xs-6 resetStyle height58">
<span class="bigFont" style="font-size:50px;font-weight:bold;color:#ff8e44;">{{time.D}}</span>
<span style="color:#ff8e44;"> days</span>
</div>
</div>
<div class="row resetStyle">
<div class="col col-xs-4 resetStyle height58">
<span class="bigFont">{{time.h}}</span> hrs
</div>
<div class="col col-xs-4 resetStyle height58">
<span class="bigFont">{{time.m}}</span> mins
</div>
<div class="col col-xs-4 resetStyle height58">
<span class="bigFont">{{time.s}}</span> secs
</div>
</div>
</div>
</template> <script>
export default {
data(){
return{
isEnd:false,//倒计时是否结束
endTime:'2022-09-21 00:00:00',//应为接口获取到的结束时间
time:{D:"0",h:"0",m:"0",s:"0"},//时间
}
},
created(){
var self=this;
self.setEndTime();
},
mounted(){ },
methods:{
setEndTime(){
var that = this;
that.endTime=that.endTime.replace(/\-/g, "/"); //加这一行代码是为了兼容safari浏览器 因为safari浏览器根据字符串转换日期的时候支持"2016/05/31 08:00"这种格式 不支持"2016-05-31 08:00"这种格式
var interval = setInterval(function timestampToTime(){
var date = (new Date(that.endTime)) - (new Date()); //计算剩余的毫秒数
if(date <= 0){
that.isEnd = true;
clearInterval(interval)
}else{
that.time.D = parseInt(date / 1000 / 60 / 60 / 24 , 10);
that.time.h = parseInt(date / 1000 / 60 / 60 % 24 , 10);
if(that.time.h < 10){
that.time.h = "0" + that.time.h
}
that.time.m = parseInt(date / 1000 / 60 % 60, 10);//计算剩余的分钟
if(that.time.m < 10){
that.time.m = "0" + that.time.m
}
that.time.s = parseInt(date / 1000 % 60, 10);//计算剩余的秒数
if(that.time.s < 10){
that.time.s = "0" + that.time.s
}
that.time=Object.assign({},that.time)
return that.time;
}
},1000);
},
}
}
</script>
<style scoped>
.countDownBox{
width:290px;
height:116px;
float: right;
margin-top:74px;
}
@media screen and (max-width: 990px) {
.countDownBox{
display: none;
}
}
@media screen and (min-width: 900px) {
}
.resetStyle{
margin:0;
padding:0;
}
.height58{
height:58px;
line-height:58px;
text-align: center;
color:#34704c;
font-size:16px;
font-family: 'Courier New', Courier, monospace;
font-weight:600;
}
.bigFont{
font-size:40px;
}
</style>
vue中封装一个倒计时的更多相关文章
- vue中封装一个全局的弹窗js
/** * Created by yx on 2017/12/21. */ export default { /** * 带按钮的弹框 * <!--自定义提示标题,内容,单个按钮事件--> ...
- IOS中封装一个View的思路
一.封装一个View的思路 1.将View内部的业务逻辑(显示内容)封装到View中 2.一般情况下,View的位置应该由父控件来决定,也就是位置不应该固定死在View内部 3.至于View的宽高,根 ...
- 项目开发中封装一个BarButtonItem类别-很实用
Encapsulates a TabBarItem--封装一个BarButtonItem类 在我们程序的导航栏的左边或右边一般都会有这样的BarButtonItem,用来界面之间的跳转 如果我们有很多 ...
- vue中methods一个方法调用另外一个方法
转自http://blog.csdn.net/zhangjing1019/article/details/77942923 vue在同一个组件内: methods中的一个方法调用methods中的另外 ...
- 使用vue.js封装一个包含图片的跑马灯组件
初衷: 学习完Vuejs后,来准备练习仿写一下老东家的门户页面,主要是为了熟悉一下常用插件的使用,比如video.js,wow.js,swiper等等:而其中涉及到一个包含图片跑马灯组件,大概长这样( ...
- 使用better-scroll在vue中封装自己的Scroll组件
1. better-scroll 原理 用一张图感受: 绿色部分为 wrapper,也就是父容器,它会有固定的高度.黄色部分为 content,它是父容器的第一个子元素,它的高度会随着内容的大小而撑高 ...
- 在Lua中封装一个调试日志(附lua时间格式)
--自己封装一个Debug调试日志 Debug={} Info={} local function writeMsgToFile(filepath,msg) end function Debug.Lo ...
- 在vue中写一个跟着鼠标跑的div,div里面动态显示数据
1.div应该放在body里面,这是我放在body中的一个div里面的div <!-- 信息查看层 --> <div class="floatDiv" :styl ...
- js中封装一个自己的简单数学对象
封装一个数学对象求最大值最小值 <script> var myMath={ PI:3.1415926, max:function(){ var max=arguments[0];//注意a ...
随机推荐
- MACD波段选股
MA12:=MA(C,); {股价连续3天站稳12日均线,且12日均线走平或向上} C1:=EVERY(C>MA12,) AND MA12>=REF(MA12,); {MACD金叉,且DI ...
- winform 替换word文档中的字段(包含图片添加),生成导出PDF文件(也可是word文件)
1.先打开你需要替换的word文档,在想要后续更换字段值的地方添加“书签”. 2.将模板文档存放在 程序的Debug文件下. 3.生成文件的按钮点击事件 代码: string templatePath ...
- TR-FS00会计科目创建GL_ACCT_MASTER_SAVE
https://blog.csdn.net/z_x_xing_/article/details/90514715 GL_ACCT_MASTER_SAVE 创建总账科目 前台事务代码:FS00 函数 ...
- JAVA笔记整理(一),JAVA介绍
JAVA语言的版本: J2SE(Java2 Platform Standard Edition,java平台标准版),后更名为:JAVA SE J2EE(Java 2 Platform,Enterpr ...
- c# 定制Equals()
- Python基础Day8
一.内容回顾 列表的存储:列表里的元素存储的是值的内存地址,就算通过copy,复制后容器里的值也是指向同一个内存地址(跟驻留机制有关) l1 = [1,2,3, l2 = l1.copy() 浅cop ...
- Java--8--新特性--Lambda
java9 都出来了,我才开始接触到java8的新特性,有点脱节啊.. Lambda是一个匿名函数,可以理解为一段可以传递的代码,将代码像数据一样传递,下面是一个小例子. public class E ...
- Python_if语句
1.if语句: color='红色' if color=='蓝色': print('我是蓝色') elif color=='红色': print('我是红色') else : print('未知') ...
- Django modle基础样版
定义一个基类模版, from django.db import models class ModelBase(models.Model): """ "" ...
- 使用aop注解实现表单防重复提交功能
原文:https://www.cnblogs.com/manliu/articles/5983888.html 1.这里采用的方法是:使用get请求进入表单页面时,后台会生成一个tokrn_flag分 ...