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 设计模式 安全沙箱模式
Sep 24 Javascript
提交表单时执行func方法实现代码
Mar 17 Javascript
js中的this关键字详解
Sep 25 Javascript
easyui Droppable组件实现放置特效
Aug 19 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
May 26 Javascript
js实现日历的简单算法
Jan 24 Javascript
Vue2.0 UI框架ElementUI使用方法详解
Apr 14 Javascript
vue服务端渲染的实例代码
Aug 28 Javascript
表格展示利器 Bootstrap Table实例代码
Sep 06 Javascript
详解react、redux、react-redux之间的关系
Apr 11 Javascript
vue权限管理系统的实现代码
Jan 17 Javascript
JavaScript实现旋转木马轮播图
Mar 16 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 shell超强免杀、减少体积工具实现代码
2012/10/16 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
2015/03/12 PHP
PHP基于递归实现的约瑟夫环算法示例
2017/08/27 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
Thinkphp 3.2框架使用Redis的方法详解
2019/10/24 PHP
js与jquery中获取当前鼠标的x、y坐标位置的代码
2011/05/23 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
2011/09/13 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
JS根据变量保存方法名并执行方法示例
2014/04/04 Javascript
Javascript的setTimeout()使用闭包特性时需要注意的问题
2014/09/23 Javascript
javascript获取元素离文档各边距离的方法
2015/02/13 Javascript
javascript实现简单的html5视频播放器
2015/05/06 Javascript
jquery实现表单验证并阻止非法提交
2015/07/09 Javascript
ionic cordova一次上传多张图片(类似input file提交表单)的实现方法
2016/12/16 Javascript
Vue生命周期示例详解
2017/04/12 Javascript
详解Windows下安装Nodejs步骤
2017/05/18 NodeJs
使用Node.js实现RESTful API的示例
2017/08/01 Javascript
js实现方块上下左右移动效果
2017/08/17 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
2019/11/06 Javascript
JS实现前端动态分页码代码实例
2020/06/02 Javascript
python获取元素在数组中索引号的方法
2015/07/15 Python
python 全文检索引擎详解
2017/04/25 Python
Python进阶之尾递归的用法实例
2018/01/31 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
Python秒算24点实现及原理详解
2019/07/29 Python
Django框架组成结构、基本概念与文件功能分析
2019/07/30 Python
python+django+rest框架配置创建方法
2019/08/31 Python
jupyter notebook 实现matplotlib图动态刷新
2020/04/22 Python
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
非凡女性奢华谦虚风格:The Modist
2017/10/28 全球购物
人事专员职责
2014/02/22 职场文书
森林病虫害防治方案
2014/06/02 职场文书
幼儿园工作总结2015
2015/04/01 职场文书
职工培训工作总结
2015/08/10 职场文书