• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > SVG怎样开始实现多彩圆环倒计时

SVG怎样开始实现多彩圆环倒计时

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含圆环,多彩,实现等相关知识,匿名希望在学习及工作中可以帮助到您
这次给大家带来SVG怎样开始实现多彩圆环倒计时,怎样用SVG实现多彩圆环倒计时?SVG实现多彩圆环倒计时的注意事项有哪些,下面就是实战案例,一起来看一下。

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

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代码如下:

<div id="timeCountX" class="time-count-x">
    <svg width="440" height="440" viewBox="0 0 440 440" class="center">
        <defs>
            <linearGradient x1="1" y1="0" x2="0" y2="0" id="gradient1">
                <stop offset="0%" stop-color="#e52c5c"></stop>
                <stop offset="100%" stop-color="#ab5aea"></stop>
            </linearGradient>
           <linearGradient x1="1" y1="0" x2="0" y2="0" id="gradient2">
                <stop offset="0%" stop-color="#4352f3"></stop>
                <stop offset="100%" stop-color="#ab5aea"></stop>
            </linearGradient>
        </defs>
        <g transform="matrix(0,-1,1,0,0,440)">
            <circle cx="220" cy="220" r="170" stroke-width="50" stroke="#f0f1f5" fill="none" stroke-dasharray="1069 1069"></circle>
            <circle cx="220" cy="220" r="170" stroke-width="50" stroke="url('#gradient1')" fill="none" stroke-dasharray="1069 1069"></circle>
            <circle cx="220" cy="220" r="170" stroke-width="50" stroke="url('#gradient2')" fill="none" stroke-dasharray="534.5 1069"></circle>
        </g>
    </svg>
    <span id="timeSecond" class="time-second"></span>
</div>

最后是相关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();

相信看了这些案例你已经掌握了方法,更多精彩请关注微课江湖其它相关文章!

相关阅读:

H5的所有元素及基本语法归纳

html5怎样操作indexedDB

关于老版本的浏览器不兼容H5和C3的处理方法

以上就是SVG怎样开始实现多彩圆环倒计时的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • SVG怎样开始实现多彩圆环倒计时
  • H5动画--canvas绘制圆环百分比进度的实例
  • 详解canvas实现圆弧、圆环进度条的实例方法

相关文章

  • 2018-12-03 移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
  • 2018-12-03 HTML5实现下雪效果的实例代码分享
  • 2018-12-03phonegap的常用事件总结
  • 2018-12-03content"width=640,user-scalable=no" 然后再进行固定尺寸的px设计?
  • 2017-08-06HTML5新特性之用SVG绘制微信logo
  • 2018-12-03使用HTML5实现网页音乐播放器
  • 2017-08-06详解HTML5通讯录获取指定多个人的信息
  • 2018-12-03html5 video如何实现实时监测当前播放时间(代码)
  • 2017-08-06html5指南-1.html5全局属性(html5 global attributes)深入理解
  • 2017-08-06让IE支持HTML5的方法

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5使用Audio标签实现歌词同步的效果
    • 实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码_html5教程技巧
    • 涂鸦板简单实现 Html5编写属于自己的画画板
    • html5指南-6.如何创建离线web应用程序实现离线访问_html5教程技巧
    • 利用html5 Api实现分页的示例代码分享
    • HTML 5 event-source 标签是否违背了自定义标签才使用短横线的约定?
    • HTML5的结构和语义(1):前言_html5教程技巧
    • Canvas处理图片的方法
    • HTML5 元素通用DOM接口
    • 深入剖析HTML5 内联框架iFrame

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有