JQuery仿小米手机抢购页面倒计时效果


Posted in Javascript onDecember 16, 2014

1、效果及功能说明

通过对时间的控制来告诉用户一个活动还剩多少时间,精确到秒。

2、实现原理

首先定义活动的截至的时间,要重年份精确到毫秒,在获得当前的年份到秒钟,在用截至时间,减去现在的时间,剩下的还有多少的时间就把还剩下的时间给显示出来就得出了离截止日期还有多久。

主要代码

var startTime = new Date();

//获得当前的时间

startTime.setFullYear(2016, 5, 27);

//调用设置年份

startTime.setHours(23);

//调用设置指定的时间的小时字段

startTime.setMinutes(59);

//调用设置指定时间的分钟字段

startTime.setSeconds(59);

//调用设置指定时间的秒钟字段

startTime.setMilliseconds(999);

//调用置指定时间的毫秒字段

var EndTime=startTime.getTime();

//获得截至的时间

var nMS = EndTime - NowTime.getTime();

//截至时间减去当前时间获得剩余时间

var nD = Math.floor(nMS/(1000 * 60 * 60 * 24));

//定义参数 获得天数

var nH = Math.floor(nMS/(1000*60*60)) % 24;

//定义参数 获得小时

var nM = Math.floor(nMS/(1000*60)) % 60;

//定义参数 获得分钟

var nS = Math.floor(nMS/1000) % 60;

//定义参数 获得秒钟 这些就是当前时间

3、运行环境
IE6 IE7 IE8及以上 Firefox 和 Google
Chrome游览器下都可实现

4、所有图片的压缩包新建一个文件后将包解压放进文件夹图片的压缩包在页面的最下方可以看到并下载下载后无需修改文件夹名因为本身就已经写好了和html5内的路径相吻合

5、将创建html文件保存的时候将编码类型换成(UTF-8有签名)这样可以让部分中文正常的显示出来,将保存类型(T)换成(所有文件(*.*)),将html5和解压后的图片文件夹放在同一个文件夹内效果

6、代码

<!DOCTYPE html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>

<style type="text/css">

*{margin:0;padding:0;list-style-type:none;}

a,img{border:0;}

body{font:12px/180%;background:#fff;}

.timerbg{background:url(images/bg.png) no-repeat;height:60px;width:980px;margin:20px auto;}

.timerbg div{float:right;font-size:16px;margin:24px 0 0 0;font-weight:800;text-align:left;width:335px;font-family:"微软雅黑","宋体";}

.timerbg div strong{font-size:28px;margin:0 13px;color:#D6000F;font-family:Arial;}

#daoend{margin:24px 0 0 0;width:324px;color:#D6000F;font-size:22px;}

</style>

</head>

<body>

    <div class="timerbg">

        <div id="daoend" style="display:none;">本次活动已结束。</div>

        <div id="dao"><strong id="RemainD"></strong>天<strong id="RemainH"></strong>时<strong id="RemainM"></strong>分<strong id="RemainS"></strong>秒</div>

    </div>

    <script type="text/javascript">

    var startTime = new Date();

    //定义参数可返回当天的日期和时间

    startTime.setFullYear(2016, 5, 27);

    //调用设置年份

    startTime.setHours(23);

    //调用设置指定的时间的小时字段

    startTime.setMinutes(59);

    //调用设置指定时间的分钟字段

    startTime.setSeconds(59);

    //调用设置指定时间的秒钟字段

    startTime.setMilliseconds(999);

    //调用置指定时间的毫秒字段

    var EndTime=startTime.getTime();

    //定义参数可返回距 1970 年 1 月 1 日之间的毫秒数

    function GetRTime(){

    //定义方法

        var NowTime = new Date();

        //定义参数可返回当天的日期和时间

        var nMS = EndTime - NowTime.getTime();

        //定义参数 EndTime减去NowTime参数获得返回距 1970 年 1 月 1 日之间的毫秒数

        var nD = Math.floor(nMS/(1000 * 60 * 60 * 24));

        //定义参数 获得天数

        var nH = Math.floor(nMS/(1000*60*60)) % 24;

        //定义参数 获得小时

        var nM = Math.floor(nMS/(1000*60)) % 60;

        //定义参数 获得分钟

        var nS = Math.floor(nMS/1000) % 60;

        //定义参数 获得秒钟

        if (nMS < 0){

        //如果秒钟大于0

            $("#dao").hide();

            //获得天数隐藏

            $("#daoend").show();

            //获得活动截止时间展开

        }else{

        //否则

           $("#dao").show();

           //天数展开

           $("#daoend").hide();

           //活动截止时间隐藏

           $("#RemainD").text(nD);

           //显示天数

           $("#RemainH").text(nH);

           //显示小时

           $("#RemainM").text(nM);

           //显示分钟

           $("#RemainS").text(nS); 

           //显示秒钟

        }

    }

    $(document).ready(function () {

    //定义方法

        var timer_rt = window.setInterval("GetRTime()", 1000);

        //定义参数 显示出GetRTime()方法 1000毫秒以后启动

    });

    </script>

</body>

</html>

7、倒计时完成后,设置按钮的hidden属性为false,简单吧~

本代码是从本人项目中截取出来的,小伙伴们可以放心使用,如有疑问,请留言。

Javascript 相关文章推荐
Javascript SHA-1:Secure Hash Algorithm
Dec 20 Javascript
jQuery :nth-child前有无空格的区别分析
Jul 11 Javascript
JavaScript的事件绑定(方便不支持js的时候)
Oct 01 Javascript
js或jquery实现页面打印可局部打印
Mar 27 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
Aug 07 Javascript
node.js中的fs.renameSync方法使用说明
Dec 16 Javascript
Javascript中的apply()方法浅析
Mar 15 Javascript
javascript绘制漂亮的心型线效果完整实例
Feb 02 Javascript
jstree的简单实例
Dec 01 Javascript
vue.js学习之递归组件
Dec 13 Javascript
解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)
Jul 26 Javascript
vue router动态路由设置参数可选问题
Aug 21 Javascript
jQuery实现数字加减效果汇总
Dec 16 #Javascript
javascript使用switch case实现动态改变超级链接文字及地址
Dec 16 #Javascript
浅谈Javascript变量作用域问题
Dec 16 #Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
Dec 16 #Javascript
javascript arguments使用示例
Dec 16 #Javascript
javascript实现日期格式转换
Dec 16 #Javascript
javascript实现禁止复制网页内容
Dec 16 #Javascript
You might like
用PHP写的MySQL数据库用户认证系统代码
2007/03/22 PHP
PHP将两个关联数组合并函数提高函数效率
2014/03/18 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
2015/05/12 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
详解Yii2高级版引入bootstrap.js的一个办法
2017/03/21 PHP
JS动画效果代码3
2008/04/03 Javascript
javascript显示选择目录对话框的代码
2008/11/10 Javascript
JavaScript对HTML DOM使用EventListener进行操作
2015/10/21 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
node.js实现登录注册页面
2017/04/08 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
前端开发不得不知的10个最佳ES6特性
2017/08/30 Javascript
在vue中使用Autoprefixed的方法
2018/07/27 Javascript
Vue动态生成表格的行和列
2019/07/18 Javascript
Vue引入Stylus知识点总结
2020/01/16 Javascript
原生js+css实现tab切换功能
2020/09/17 Javascript
[07:27]DOTA2卡尔工作室 英雄介绍水晶室女篇
2013/06/21 DOTA
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
django 模版关闭转义方式
2020/05/14 Python
pytorch实现查看当前学习率
2020/06/24 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
html5响应式开发自动计算fontSize的方法
2020/01/13 HTML / CSS
社区十八大感言
2014/01/19 职场文书
大专毕业生求职信
2014/07/05 职场文书
2014年转正工作总结
2014/11/08 职场文书
离婚协议书范本(通用篇)
2014/11/30 职场文书
2015年世界无车日活动总结
2015/03/23 职场文书
2015年幼师工作总结
2015/04/28 职场文书
2015年财务部年度工作总结
2015/05/19 职场文书
五一放假通知怎么写
2015/08/18 职场文书
2019求职信:应届生求职信范文
2019/04/24 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
css中有哪些方式可以隐藏页面元素及区别
2022/06/16 HTML / CSS