返回顶部
首页 > 资讯 > 精选 >JavaScript如何实现简单的倒计时效果
  • 340
分享到

JavaScript如何实现简单的倒计时效果

2023-07-02 11:07:49 340人浏览 泡泡鱼
摘要

这篇文章主要介绍了javascript如何实现简单的倒计时效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript如何实现简单的倒计时效果文章都会有所收获,下面我们一起来看看吧。具体代码如下<

这篇文章主要介绍了javascript如何实现简单的倒计时效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript如何实现简单的倒计时效果文章都会有所收获,下面我们一起来看看吧。

具体代码如下

<!DOCTYPE html><html>    <head lang="en">        <meta charset="utf8">        <meta Http-equiv="X-UA-Compatible" cotent="IE=edge,chrome=1">        <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=2.0 initial-scale=1.0, user-Scalable=yes">        <meta name="keyWords" content="count down">        <meta name="description" content="count down">        <title>倒计时(Count Down)</title>    </head>    <body>        <script>            var halfPI = Math.PI / 2;            var doublePI = Math.PI * 2;            var ctx;            //画布大小            var canvasSize = 200;            var halfCanvasSize = canvasSize / 2;            //画布的外切圆半径            var excircleRadius = Math.SQRT2 * halfCanvasSize;            //线条宽度            var lineWidth = 2;            //蒙版颜色            var maskColor = "rgba(90,90,90,0.4)";            //单个数字的字体            var singleNumFont = halfCanvasSize * 1.6 + "px Calibri";            //两个数字的字体            var doubleNumFont = halfCanvasSize * 1.2 + "px Calibri";            //每秒刷新的帧数            var stepCount = 30;            //定时器执行间隔时间            var interval = 1000 / stepCount;            //每帧前进的弧度            var radianStep = doublePI / stepCount;            //定时器id            var intervalId = 0;            //倒计时            var countdownTime = 0;            //当前角度            var radian = 0;            function init() {                var canvas = document.createElement("canvas");                canvas.innerHTML = "Your browser can not support canvas";                canvas.width = canvasSize;                canvas.height = canvasSize;                canvas.style.backgroundColor = "darkkhaki";                canvas.style.display = "block";                var restartBtn = document.createElement("button");                restartBtn.innerHTML = "restart";                //注意:canvas的width不能写单位, 而按钮的width必须写单位, 否则无效                restartBtn.style.width = "200px";                restartBtn.addEventListener("click", function() {                    restart();                });                document.body.appendChild(canvas);                document.body.appendChild(restartBtn);                ctx = canvas.getContext("2d");                ctx.lineWidth = lineWidth;                ctx.textAlign = "center";                ctx.textBaseline = "middle";                restart();            }            function strokeLine(x1, y1, x2, y2) {                ctx.beginPath();                ctx.moveTo(x1, y1);                ctx.lineTo(x2, y2);                ctx.stroke();            }            function strokeCircle(cx, cy, r) {                ctx.beginPath();                ctx.arc(cx, cy, r, 0, doublePI);                ctx.stroke();            }            //渲染背景            function renderBg() {                ctx.clearRect(0, 0, canvasSize, canvasSize);                //绘制横竖线                ctx.strokeStyle = "black";                strokeLine(halfCanvasSize, 0, halfCanvasSize, canvasSize);                strokeLine(0, halfCanvasSize, canvasSize, halfCanvasSize);                //绘制两个内圈                ctx.strokeStyle = "Silver";                strokeCircle(halfCanvasSize, halfCanvasSize, halfCanvasSize * 0.9);                strokeCircle(halfCanvasSize, halfCanvasSize, halfCanvasSize * 0.7);            }            //渲染蒙版            function renderMask(radian) {                //绘制扇形的边界线                var x = halfCanvasSize + excircleRadius * Math.sin(radian);                 var y = halfCanvasSize - excircleRadius * Math.cos(radian);                ctx.strokeStyle = "black";                strokeLine(halfCanvasSize, halfCanvasSize, x, y);                //绘制扇形                ctx.fillStyle = maskColor;                ctx.beginPath();                ctx.moveTo(halfCanvasSize, halfCanvasSize);                ctx.arc(halfCanvasSize, halfCanvasSize, excircleRadius, -halfPI, -halfPI + radian);                ctx.closePath();                ctx.fill();            }            //渲染数字            function renderNum(num) {                ctx.fillStyle = "black";                ctx.font = num < 10 ? singleNumFont : doubleNumFont;                ctx.fillText(num, halfCanvasSize, halfCanvasSize);            }            //渲染            function render() {                renderBg();                renderMask(radian);                renderNum(countdownTime);            }            //更新            function update() {                radian += radianStep;                if(radian >= (doublePI + radianStep)) {                    radian = 0;                    countdownTime--;                }                if(countdownTime < 0) {                    stop();                }            }            //循环            function loop() {                render();                update();            }            //停止            function stop() {                if(intervalId === 0) {                    return;                }                clearInterval(intervalId);                intervalId = 0;            }            //开始倒计时            function restart() {                stop();                countdownTime = 10;                radian = 0;                intervalId = setInterval(loop, interval);            }            init();        </script>    </body></html>

JavaScript如何实现简单的倒计时效果

关于“JavaScript如何实现简单的倒计时效果”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“JavaScript如何实现简单的倒计时效果”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: JavaScript如何实现简单的倒计时效果

本文链接: https://lsjlt.com/news/341426.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JavaScript如何实现简单的倒计时效果
    这篇文章主要介绍了JavaScript如何实现简单的倒计时效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript如何实现简单的倒计时效果文章都会有所收获,下面我们一起来看看吧。具体代码如下<...
    99+
    2023-07-02
  • javascript实现简单倒计时效果
    本文实例为大家分享了javascript实现倒计时效果的具体代码,供大家参考,具体内容如下 实现思路: 1、页面创建好天、小时、分、秒的标签元素,定义好样式 2、js获取天、小时、分...
    99+
    2024-04-02
  • JavaScript实现简单的倒计时效果
    本文实例为大家分享了JavaScript实现简单倒计时效果的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html>     <...
    99+
    2024-04-02
  • JavaScript如何利用Date实现简单的倒计时
    这篇文章将为大家详细讲解有关JavaScript如何利用Date实现简单的倒计时,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。介绍Date对象,是操作日期和时间的对象。D...
    99+
    2024-04-02
  • Canvas如何实现倒计时效果
    这篇文章主要介绍了Canvas如何实现倒计时效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。HTML:<canvas id...
    99+
    2024-04-02
  • 如何利用JavaScript实现春节倒计时效果
    这篇文章给大家分享的是有关如何利用JavaScript实现春节倒计时效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。效果预览html部分<!DOCTYPE html><!--geya...
    99+
    2023-06-26
  • javascript怎么实现简单页面倒计时
    小编给大家分享一下javascript怎么实现简单页面倒计时,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!具体如下:<!DOCTYPE html><html><head>&nb...
    99+
    2023-06-06
  • vue、react如何实现倒计时效果
    这篇文章主要介绍vue、react如何实现倒计时效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Vue方案一:俩个元素HTML:<div id="exam...
    99+
    2024-04-02
  • CSS3中如何实现倒计时效果
    小编给大家分享一下CSS3中如何实现倒计时效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!实现效果实现代码html<div class='...
    99+
    2023-06-08
  • python如何实现简单倒计时功能
    这篇文章给大家分享的是有关python如何实现简单倒计时功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python的五大特点是什么python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明...
    99+
    2023-06-14
  • python3实现倒计时效果
    本文实例为大家分享了python3实现倒计时效果的具体代码,供大家参考,具体内容如下 # CountDown.py import turtle,time def drawGap(...
    99+
    2024-04-02
  • js定时器如何实现倒计时效果
    这篇文章主要介绍了js定时器如何实现倒计时效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下日期函数倒计时 =  用 ...
    99+
    2024-04-02
  • javascript如何实现倒计时
    这篇“javascript如何实现倒计时”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“javascript如何实现倒计时”文...
    99+
    2023-07-02
  • Android 简单实现倒计时功能
    在 Android 中倒计时功能是比较常用的一个功能,比如短信验证码,付款倒计时等。实现方式有Handler、Thread 等,但是实现起来都有点麻烦,其实Android已经为...
    99+
    2022-06-06
    倒计时 Android
  • python实现简单倒计时功能
    使用python实现简单倒计时exe,供大家参考,具体内容如下 使用tkinter制作界面实现倒计时功能。 使用time.sleep(1)实现 秒级 倒计时 使用...
    99+
    2024-04-02
  • Android实现倒计时的按钮效果
    最近有人问我如何实现倒计时的按钮功能,例如发送验证码,我记得有个CountDownTimer,因为好久没用过了,自己就写了一个,代码如下 new CountDownTimer...
    99+
    2022-06-06
    倒计时 按钮 Android
  • JS实现简单网页倒计时器
    制作一个简单的网页倒计时器(js原生代码),供大家参考,具体内容如下 实现一个简单的网页倒计时(距离xx年x月x日还剩多少时间),效果是这样的 首先HTML代码部分,我们需要简单编...
    99+
    2022-11-13
    JS网页倒计时器 JS倒计时器 JS网页倒计时
  • javascript如何实现数字倒计时
    这篇文章主要介绍了javascript如何实现数字倒计时的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javascript如何实现数字倒计时文章都会有所收获,下面我们一起来看看吧。JavaScript是一种非常...
    99+
    2023-07-06
  • JavaScript实现简单计时器
    本文实例为大家分享了JavaScript实现简单计时器的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"&g...
    99+
    2024-04-02
  • Android使用CountDownTimer实现倒计时效果
    在开发中会经常用到倒计时这个功能,包括给手机发送验证码等等,之前我的做法都是使用Handler + Timer + TimerTask来实现,现在发现了这个类,果断抛弃之前的做...
    99+
    2022-06-06
    倒计时 Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作