js实现倒计时 类似团购网站

news/2024/5/12 22:23:30/文章来源:https://blog.csdn.net/weixin_33790053/article/details/90151039

一、demo与效果展示

为节约时间,我就直接套用了企鹅团的界面作为demo的背景。因为是倒计时,所以需要一个固定的时间,为了n年后,某位仁兄打开demo页面依然在倒计时,所以我把倒计时时间设成了2050年7月30日中午12点整,还有40年才到,因为年代较长,所以有必要显示剩余年份与月份。所以,最后demo页面的效果如下图所示:
demo页面关键部位截图 张鑫旭-鑫空间-鑫生活

您可以狠狠地点击这里:团购倒计时demo

 

二、使用

倒计时其实就是Date类的一些计算与处理,主要是些繁琐的工作。为了省掉他人的功夫以及方便后来的使用,我已经将倒计时主要处理方法封装起来了。方法名为:fnTimeCountDown(参数1, 参数2)

具体使用如下,首先,调用倒计时js脚本,您可以在页面的任何位置嵌入这段脚本:

<script type="text/javascript" src="http://www.zhangxinxu.com/study/js/timeCountDown.js"></script>

然后,调用方法fnTimeCountDown(参数1, 参数2)即可,于是就可以实现倒计时效果了,很简单吧。

下面是重点了,就是关于这里的参数。参数1指的是截止的时间。我个人建议使用UTC()方法创建Date对象传递给Date构造函数。例如,Date.UTC(2030, 6, 27, 16, 34),表示的就是2030年7月27日161时34分0秒(月份需要加1),然后将这个参数替换“参数1”就可以了。具体来说就是:

var d = Date.UTC(2030, 6, 27, 16, 34);
fnTimeCountDown(d, 参数2)

关于参数2,有点小复杂。参数2是个对象,同时也是个对象集,是显示秒、分、时数值标签的DOM对象集合,里面的对象名是固定的,不可自己定义,否则没有效果的。考虑到扩展性,对象名从秒一直到年,具体如下:

{sec: 显示秒数值的标签对象,mini: 显示分钟数值的标签对象,hour: 显示小时数值的标签对象,day: 显示天数数值的标签对象,month: 显示月份数值的标签对象,year: 显示年数数值的标签对象
}

以上所有的参数都是可选的,如果哪个参数没有,则不显示时间变化,如果参数对应的DOM对象不存在,自然也没有数值变化的。如果是上面部分展示的团购倒计时的话,只要下面三个子对象就足够了:

{sec: 显示秒数值的标签对象,mini: 显示分钟数值的标签对象,hour: 显示小时数值的标签对象
}

举个例子吧,有三个标签,分别用来显示剩余的小时数,分钟数以及秒数的,其id分别是hour,mini,sec,如下所示:

<span id="hour"></span>时 <span id="mini"></span>分 <span id="sec"></span>秒

则第二个参数应该这么写:

var obj = {sec: document.getElementById("sec"),mini: document.getElementById("mini"),hour: document.getElementById("hour")
}

所以两个参数合起来就是:

var d = Date.UTC(2030, 6, 27, 16, 34);
var obj = {sec: document.getElementById("sec"),mini: document.getElementById("mini"),hour: document.getElementById("hour")
}
fnTimeCountDown(d, obj);

这段实例代码所产生的效果如下所示:
06时 20分 11秒

如果现在还没有到2030年,则您应该可以看到上面秒前面的数值在不停的倒计时。

需要注意的是,参数2的对象集不支持jQuery对象,只能是DOM对象,如果您需要支持jQuery对象,需要修改原js方法中的innerHTML为jQuery的html()或是text()方法。

最后,提供下js脚本的下载,您可以狠狠地点击这里:timeCountDown.js(1.75K, 右键 – [目标|链接]另存为)

三、简短的结语

此脚本只是简单测试了下,且js功力尚浅,难免还存有bug或是不准确之处。如果您发现了,欢迎指正,不甚感谢。也欢迎各种形式的讨论与交流。

转自张鑫旭-鑫空间-鑫生活
原文地址:http://www.zhangxinxu.com/wordpress/?p=987

分类: JAVASCRIPT,Jquery

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/4689375.html,如需转载请自行联系原作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_749153.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云+Ubuntu+LAMP+WordPress搭建个人博客网站

首发于个人网站http://139.196.86.184&#xff08;域名备案中&#xff09;&#xff0c;转载注明作者与出处&#xff0c;谢谢。 搭个人网站一般有两种选择&#xff1a; GitHub Pages Hexo / jekyl服务器 WordPress / Typecho之前试过1&#xff0c;现在试试2&#xff0c;个人选…

python使用requests和beautifusoup模块爬取学校网站的就业中心信息,并发送至自己的邮箱...

2019独角兽企业重金招聘Python工程师标准>>> 最近有一件非常难过以及无限悲伤的事情发生了&#xff0c;那就是Firebug停止更新和维护了&#xff01;&#xff01; Firebug作为一款前端调试工具&#xff0c;同时也是我接触的第一款前端工具&#xff08;虽然我仅使用它…

基于Vue+Vuex+iView的电子商城网站

MALL-VUE 这是一个基于VUE VUEX iView做的一个电商网站前端项目, 附带前后端分离实现版本(在forMallServer分支)&#xff0c;欢迎fork或star项目地址: https://github.com/PowerDos/Mall-Vue 项目预览地址(demo)&#xff1a; https://powerdos.github.io/Mall-Vue/index.html…

网站服务器2核4核怎么选,云服务器2核和4核的区别

云服务器2核和4核的区别 内容精选换一换云服务器创建完成后&#xff0c;数据盘需要初始化后才能使用。当使用弹性伸缩为伸缩组增加数量较多的云服务器时&#xff0c;您就需要逐一手动初始化数据盘&#xff0c;将会占用较长时间。本节为您介绍通过脚本自动化完成初始化磁盘的操作…

开通个人博客啦,附上Vultr+WordPress建站全面指南

历时一个月&#xff0c;终于搭起个人博客&#xff0c;并且将以前的文章都迁移到新的网站了&#xff0c;其中还经历了迁移wordpress的问题&#xff0c;网上虽然关于wordpress的问题解答有很多&#xff0c;但是有些不适用&#xff0c;也不全面&#xff0c;这里我将记录下建站的点…

打包Asp.Net 网站成为一个exe 方便快捷的进行客户演示

2019独角兽企业重金招聘Python工程师标准>>> 在Asp时代有一个NetBox 产品可以把整个Asp网站AllInOne的打包成一个exe&#xff0c;在没有IIS的情况下可以单独运行这个exe来开启整个网站。在Asp.Net 下一直没有类似的产品出现&#xff0c;可能是IIS已经非常的强大了&a…

你应该知道的关于SEO和Javascript的6个事实

你应该知道的关于SEO和Javascript的6个事实 了解JavaScript的基础知识已成为SEO专家的一项重要技能&#xff0c;尽管到目前为止&#xff0c;这两个学科之间的关系一直存在争议。 关于SEO和JavaScript的关键问题是发现搜索引擎机器人是否可以正确地感知网站内容并实际评估用户体…

加速,加速,再加速:来自Google的网站加速技巧大全

困扰许多网站所有者很久的一个问题是网站访问速度总是那么慢。想购买独立带宽&#xff0c;预算不允许&#xff0c;想购买CDN加速&#xff0c;价格又太贵。那有没有经济实惠的解决办法呢&#xff1f;从目前的大环境来分析&#xff0c;我们也只有通过技术手段来解决这个问题了。 …

28.分析采集美团网站信息-3

28.分析采集美团网站信息-3 今天又捋一下思路&#xff0c;在兼职&#xff0c;也没时间去坐下来仔细思考分析问题&#xff1a;1.首先获取分类&#xff0c;比如先获取美食&#xff0c;再划分其分类&#xff0c;分类里有火锅、蛋糕、小吃快餐等等后面都显示了共有多少个搜索结果。…

Asp.net压缩网站中的文件

为了说明自定义虚拟路径&#xff0c;这里弄个示例&#xff0c;仅仅用一个压缩包存放一个网站的多个文件。 这个东西是要需要通过实现3个抽象类来实现&#xff1a; System.Web.Hosting.VirtualPathProvider&#xff1b;System.Web.Hosting.VirtualDirectory&#xff1b;System.W…

大型网站技术架构(二)架构模式

2019独角兽企业重金招聘Python工程师标准>>> 每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样&#xff0c;你就能一次又一次地使用该方案而不必做重复工作。 所谓网站架构模式即为了解决大型网站面临的高并发访问、海量数据、高可靠…

网站的SEO以及它和站长工具的之间秘密(转)

博客迁移没有注意 URL 地址的变化&#xff0c;导致百度和 google 这两只爬虫引擎短时间内找不到路。近段时间研究了下国内最大搜索引擎百度和国际最大搜索引擎google的站长工具&#xff0c;说下感受。 百度的站长工具地址&#xff1a;http://zhanzhang.baidu.com/dashboard/ind…

大型网站技术架构(八)网站的安全架构

2019独角兽企业重金招聘Python工程师标准>>> 从互联网诞生起&#xff0c;安全威胁就一直伴随着网站的发展&#xff0c;各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。 1、XSS攻击 XSS攻击即跨站点脚本攻击&#xff08;…

Nodejs建站笔记-注册登录流程的简单实现

1. 使用Backbone实现前端hash路由 登录注册页面如下&#xff1a; 初步设想将注册和登录作为两个不同的url实现&#xff0c;但登录和注册功能的差距只有form表单部分&#xff0c;用两个url实现显然开销过大&#xff0c;所以最终方案为使用hash作为前端路由&#xff0c;根据url的…

搜索引擎优化(SEO)解决方案

搜索引擎优化&#xff08;SEO&#xff09;解决方案 在此之前&#xff0c;希望大家能重新审视搜索引擎&#xff0c;通俗来讲就是我们日常所用的百度、谷歌、搜狗、雅虎等。磨刀不误砍柴工&#xff0c;知己知彼&#xff0c;百战不殆&#xff01; 一、搜索引擎是什么&#xff1f; …

关于大型网站技术演进的思考(一)--存储的瓶颈(1)

转自&#xff1a;http://www.cnblogs.com/sharpxiajun/p/4237704.html 前不久公司请来了位互联网界的技术大牛跟我们做了一次大型网站架构的培训&#xff0c;两天12个小时信息量非常大&#xff0c;知识的广度和难度也非常大&#xff0c;培训完后我很难完整理出全部听到的知识&a…

怎样高效利用PPT模板网站找到适合自己的PPT模板

我相信许多人喜欢在需要制作PPT时制作PPT。虽然我已经学到了很多PPT制作技巧&#xff0c;但我也收集了很多图片&#xff0c;图标&#xff0c;PPT模板等&#xff0c;但是当我真正使用它时&#xff0c;我仍然不知道该怎么做&#xff0c;然后我只是用了模板直接&#xff0c;节省时…

电子商务网站比较常用的缓存策略架构

缓存是分布式系统中的重要组件&#xff0c;主要解决高并发&#xff0c;大数据场景下&#xff0c;热点数据访问的性能问题。提供高性能的数据快速访问。 这次主要是分享下自己觉得比较通用的一个缓存策略的架构方案,也是比较 容易理解的.欢迎吐槽. 有更牛逼的也欢迎大家说下: 缓…

Cookie注入靶场:模拟公司网站

靶场 这是一个靶场的样子 随意点击一个连接&#xff0c;发现是有id号的&#xff0c;但是id前面有shownews.asp这个东西。这个就是典型的Cookie注入标志 Cookie注入标志 有着如同.asp?idxxx的url通常我们先去掉前面的?idxxx 看它是否显示正常&#xff0c;如果不正常&#x…

css 背景透明_想给网站换个背景图?这个神器提供超多免费素材

网页比较少有背景图需求&#xff0c;多半都是以单色为主&#xff0c;如果觉得略显单调&#xff0c;也能使用纹理材质或渐层色做为背景&#xff0c;例如 Paper-co 就有许多日系的纸张纹理材质可用做背景&#xff0c;不仅看起来可以提升质感&#xff0c;也不会影响阅读造成负担&a…