html 圆环实现多种颜色,SVG实现多彩圆环倒计时效果的示例代码

圆环倒计时我们经常见到,实现的方法也有很多种。但是本文将介绍一种全新的实现方式,使用SVG来实现倒计时功能。

本文主要用到了SVG的stroke-dasharray和stroke-dashoffset特性。下图是倒计时运行效果:

b7a458d6db66556929a4ee0910f20140.png

SVG倒计时案例

下面说说相关的实现代码。css实现代码如下:

svg {

transform: rotate(-0.05deg);

}

circle {

transition: stroke-dasharray .2s;

}

.time-count-x {

line-height: 1.5;

position: relative;

}

.time-second {

position: absolute;

top: 50%; left: 0; right: 0;

margin-top: -.75em;

text-align: center;

font-size: 100px;

}

相关html代码如下:

最后是相关JavaScript代码:

var eleCircles=document.querySelectorAll("#timeCountX circle");

var eleTimeSec=document.getElementById("timeSecond");

var perimeter=Math.PI*2*170;

var circleInit=function(){

if(eleCircles[1]){

eleCircles[1].setAttribute("stroke-dasharray","1069 1069")

}

if(eleCircles[2]){

eleCircles[2].setAttribute("stroke-dasharray",perimeter/2+" 1069")

}

eleTimeSec.innerHTML=""

};

var timerTimeCount=null;

var fnTimeCount=function(b){

if(timerTimeCount){

return

}

var b=b||10;

var a=function(){

var c=b/10;

if(eleCircles[1]){

eleCircles[1].setAttribute("stroke-dasharray",perimeter*c+" 1069")

}

if(eleCircles[2]&&b<=5){

eleCircles[2].setAttribute("stroke-dasharray",perimeter*c+" 1069")

}

if(eleTimeSec){

eleTimeSec.innerHTML=b

}

b--;

if(b<0){

clearInterval(timerTimeCount);

timerTimeCount=null;

alert("时间到!");

circleInit()

}

};

a();

timerTimeCount=setInterval(a,1000)

};

fnTimeCount();

整个案例的代码非常少,有喜欢的朋友可以将代码保存到html中,运行一下,体验体验实际效果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

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

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

相关文章

初学大数据之Python中5个最佳的数据科学库的学习

在下载了pycharm软件以及通过前两篇文章&#xff0c;配置了相应的模块包之后&#xff0c;那就开始对常用的模块的学习&#xff0c;以便后期利用这些模块对数据做模型化处理。 如果你已经决定把Python作为你的编程语言&#xff0c;那么&#xff0c;你脑海中的下一个问题会是&…

模拟银行自动提款系统python

列出对象及属性名称行为...py 人 类名&#xff1a;Person 属性&#xff1a;姓名 身份证号 电话 卡 行为&#xff1a;卡 类名&#xff1a;Card 属性&#xff1a;卡号 密码 余额 行为&#xff1a;银行 类名&#xff1a;Bank 属性&#xff1a;用户列表 提款机提款机 类名&#xf…

sklearn中常用的数据预处理方法

常见的数据预处理方法&#xff0c;以下通过sklearn的preprocessing模块来介绍; 1. 标准化&#xff08;Standardization or Mean Removal and Variance Scaling) 变换后各维特征有0均值&#xff0c;单位方差。也叫z-score规范化&#xff08;零均值规范化&#xff09;。计算方式是…

SharePoint Server 2016 PWA(Project web app) 被变为只读模式

今天有同事反应了一个状况&#xff0c;我们SharePoint 2016里面集成的Project Web App(以下简称PWA)变成 read-only 只读模式了&#xff01;今天就给大家分享一下我的排查过程&#xff0c;供大家参考。 整个过程我一共使用了五种办法&#xff0c;结果最后一种才生效&#xff0c…

集成学习之参数调整策略

1 Random Forest和Gradient Tree Boosting参数详解 在sklearn.ensemble库中&#xff0c;我们可以找到Random Forest分类和回归的实现&#xff1a;RandomForestClassifier和RandomForestRegression&#xff0c;Gradient Tree Boosting分类和回归的实现&#xff1a;GradientBoost…

Random Forest算法中的参数详解

本篇不是介绍RF的&#xff0c;关于RF网上有很多通俗易懂的解释 西瓜书与统计学习方法等很多教材中的解释也都足够 本篇仅针对如何使用sklearn中的RandomForestClassifier作记录 一、代码怎么写 [python] view plaincopy print?class sklearn.ensemble.RandomForestClassifier(…

给未来的自己一封信计算机,给未来的自己的一封信范文(精选5篇)

给未来的自己的一封信范文(精选5篇)在日常生活或是工作学习中&#xff0c;大家总免不了要接触或使用书信吧&#xff0c;书信一般包括称呼、问候语、正文、祝语、署名、日期六个部分。你知道书信怎样写才规范吗&#xff1f;下面是小编为大家收集的给未来的自己的一封信范文(精选…

GBDT算法简介

在网上看到一篇GBDT介绍非常好的文章&#xff0c;GBDT大概是非常好用又非常好用的算法之一了吧(哈哈 两个好的意思不一样) GBDT(Gradient Boosting Decision Tree) 又叫 MART&#xff08;Multiple Additive Regression Tree)&#xff0c;是一种迭代的决策树算法&#xff0c;该算…

DevExpress Chart空间Y轴归一化(线性归一化函数)

数据的标准化&#xff08;normalization&#xff09;是将数据按比例缩放&#xff0c;使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到&#xff0c;去除数据的单位限制&#xff0c;将其转化为无量纲的纯数值&#xff0c;便于不同单位或量级的指标能够进行比较…

23期PHP基础班第四天

转载于:https://www.cnblogs.com/lihang666/p/6078982.html

gojs实现最短路径寻址实例

2019独角兽企业重金招聘Python工程师标准>>> JS function init() {if (window.goSamples) goSamples(); // init for these samples -- you dont need to call thisvar $ go.GraphObject.make; // for conciseness in defining templatesmyDiagram $(go.Diagram,…

河南王牌计算机专业,河南计算机专业实力突出的7所大学,郑大位列次席,榜首实至名归...

郑州大学是省内唯一的211建设高校&#xff0c;整体办学实力在国内同类高校之中名列前茅&#xff0c;虽然没有能够在学科评估之中取得A类学科&#xff0c;但学校有化学、考古学、材料科学与工程等多个学科获评B&#xff0c;学校计算机科学与技术学科取得了C的成绩&#xff0c;虽…

JavaScript 实现继承的5种方式

js是一个面向对象的语言&#xff0c;所以具备一些面向对象的方式----------例如继承。接下来介绍5种js的继承方式.注意&#xff1a;js 中的函数其实是对象&#xff0c;函数名是对 Function 对象的引用。 1.采用call方法改变函数上下文实现继承&#xff0c;原理是改变函数内部的…

初学者在python下使用Ta-lib库时遇到的一些问题及解决办法

由于Ta-lib是一款小众库&#xff0c;所以没有很好的API来说明其中各个函数的使用方法。无奈只能摸着石头过河&#xff0c;一个个试其中函数。期间遇到一些问题希望分享出来对大家有帮助。 问题描述:在使用Ta-lib库时用到的一些简单函数如SMA(),WMA(),EMA()这类方法时&#xff…

global全局变量

global全局变量 在不指向新的地址时&#xff0c;可以不调用&#xff47;&#xff4c;&#xff4f;&#xff42;&#xff41;&#xff4c;

快速入门Matplotlib

以下是原文正文&#xff1a; 数据的处理、分析和可视化已经成为 Python 近年来最重要的应用之一。这种现象又进一步引出“大数据”分析等类似的话题&#xff0c;而大数据分析在人们所能预见的诸多领域内都有广泛应用&#xff0c;这其中就包含笔者个人感兴趣的机器学习。 Pytho…

谷歌开源 Python Fire:可自动生成命令行接口

为什么80%的码农都做不了架构师&#xff1f;>>> 今天我们很高兴地宣布 Python Fire 开源。Python Fire 可从任何 Python 代码生成命令行接口&#xff08;command line interfaces (CLIs)&#xff09;&#xff0c;简单地调用任意 Python 程序中的 Fire 函数以将那个…

tcp ip计算机网络协议,一篇文章带你熟悉 TCP/IP 协议-(一)

一、 计算机网络体系结构分层不难看出&#xff0c;TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”&#xff0c;而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”。二、 TCP/IP 基础1. TCP/IP 的具体含义从字面意义上讲&#xff…

Random Forest算法参数解释及调优

文章介绍了如何对随机森林模型进行参数调优 原文来自&#xff1a;http://www.analyticsvidhya.com/blog/2015/06/tuning-random-forest-model/ 为什么要调整机器学习算法&#xff1f; 一个月以前&#xff0c;我在kaggle上参加了一个名为TFI的比赛。 我第一次提交的结果在50%…

Random Forest随机森林概述

引言 在机器学习中&#xff0c;随机森林由许多的决策树组成&#xff0c;因为这些决策树的形成采用了随机的方法&#xff0c;因此也叫做随机决策树。随机森林中的树之间是没有关联的。当测试数据进入随机森林时&#xff0c;其实就是让每一颗决策树进行分类&#xff0c;最后取所…