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 相关文章推荐
DLL+ ActiveX控件+WEB页面调用例子
Aug 07 Javascript
JsRender for index循环索引用法详解
Oct 31 Javascript
javascript 构造函数方式定义对象
Jan 02 Javascript
js实现精确到毫秒的倒计时效果
Aug 05 Javascript
jQuery.Form上传文件操作
Feb 05 Javascript
详解React中的组件通信问题
Jul 31 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
Sep 17 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
Nov 10 Javascript
详解Vue组件之作用域插槽
Nov 22 Javascript
微信小程序中使用echarts的实现方法
Apr 24 Javascript
vue实现lodop打印功能的示例
Nov 11 Javascript
让Vue响应Map或Set的变化操作
Nov 11 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
德生PL330测评
2021/03/02 无线电
PHP生成唯一的促销/优惠/折扣码(附源码)
2012/12/28 PHP
PHP手机号中间四位用星号*代替显示的实例
2017/06/02 PHP
Laravel 修改默认日志文件名称和位置的例子
2019/10/17 PHP
表单填写时用回车代替TAB的实现方法
2007/10/09 Javascript
javascript中删除指定数组中指定的元素的代码
2011/02/12 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
jquery实现可点击伸缩与展开的菜单效果代码
2015/08/31 Javascript
使用jquery插件qrcode生成二维码
2015/10/22 Javascript
浅谈使用MVC模式进行JavaScript程序开发
2015/11/10 Javascript
js获取所有checkbox的值的简单实例
2016/05/30 Javascript
js中用cssText设置css样式的简单方法
2016/09/19 Javascript
nodejs获取微信小程序带参数二维码实现代码
2017/04/12 NodeJs
使用 vue-i18n 切换中英文效果
2018/05/23 Javascript
微信小程序签到功能
2018/10/31 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
原生JavaScript实现幻灯片效果
2021/02/19 Javascript
[51:50]完美世界DOTA2联赛 Magma vs GXR 第一场 11.07
2020/11/10 DOTA
Python使用smtplib模块发送电子邮件的流程详解
2016/06/27 Python
利用python生成一个导出数据库的bat脚本文件的方法
2016/12/30 Python
python统计多维数组的行数和列数实例
2018/06/23 Python
Python合并2个字典成1个新字典的方法(9种)
2019/12/19 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
Python实现上下文管理器的方法
2020/08/07 Python
MAC彩妆英国官网:M·A·C UK
2018/05/30 全球购物
意大利体育用品和运动服网上商店:Maxi Sport
2019/09/14 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
小学清明节活动方案
2014/03/08 职场文书
党员活动日总结
2014/05/05 职场文书
见习报告的格式
2014/11/04 职场文书
民事起诉状范文
2015/05/19 职场文书
审查起诉阶段律师意见书
2015/05/19 职场文书
员工升职自我评价
2019/03/26 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL