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 相关文章推荐
在父页面得到zTree已选中的节点的方法
Feb 12 Javascript
javascript实现博客园页面右下角返回顶部按钮
Feb 22 Javascript
基于JavaScript操作DOM常用的API小结
Dec 01 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
Dec 04 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
Aug 20 Javascript
Kendo Grid editing 自定义验证报错提示的解决方法
Nov 18 Javascript
Vuex模块化实现待办事项的状态管理
Mar 15 Javascript
详解为Bootstrap Modal添加拖拽的方法
Jan 05 Javascript
打通前后端构建一个Vue+Express的开发环境
Jul 17 Javascript
webuploader实现上传图片到服务器功能
Aug 16 Javascript
创建与框架无关的JavaScript插件
Dec 01 Javascript
vue实现登录、注册、退出、跳转等功能
Dec 23 Vue.js
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
香妃
2021/03/03 冲泡冲煮
PHP环境搭建最新方法
2006/09/05 PHP
Sample script that displays all of the users in a given SQL Server DB
2007/06/16 Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
2011/12/11 Javascript
textarea 控制输入字符字节数(示例代码)
2013/12/27 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
JavaScript绑定事件监听函数的通用方法
2016/05/14 Javascript
使用jquery提交form表单并自定义action的实现代码
2016/05/25 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
NodeJs模拟登陆正方教务
2017/04/28 NodeJs
jQuery简单判断值是否存在于数组中的方法示例
2018/04/17 jQuery
微信小程序按顺序同步执行的两种方式
2019/12/20 Javascript
[03:00]《DAC最前线》之欧美新秀VS老将
2015/02/01 DOTA
python访问sqlserver示例
2014/02/10 Python
详解Python中的元组与逻辑运算符
2015/10/13 Python
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
Python实现ssh批量登录并执行命令
2016/10/25 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
python删除本地夹里重复文件的方法
2020/11/19 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
python算法与数据结构之单链表的实现代码
2019/06/27 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
2020/02/29 Python
python如何提取英语pdf内容并翻译
2020/03/03 Python
用python实现学生管理系统
2020/07/24 Python
django下创建多个app并设置urls方法
2020/08/02 Python
HTML5中Canvas与SVG的画图原理比较
2013/01/16 HTML / CSS
美国隐形眼镜网上商店:Lens.com
2019/09/03 全球购物
介绍一下gcc特性
2015/10/31 面试题
造价工程师个人求职信
2013/09/21 职场文书
财务经理岗位职责
2013/11/09 职场文书
群教个人对照检查材料
2014/08/20 职场文书
领导干部作风建设剖析材料
2014/10/11 职场文书
个人合伙协议书范本
2014/10/14 职场文书
2016春季校长开学典礼致辞
2015/11/26 职场文书
2019年圣诞节祝福语集锦
2019/12/25 职场文书