麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > HTML > 正文

SVG實現多彩圓環倒計時效果的示例代碼

2024-08-26 00:20:09
字體:
來源:轉載
供稿:網友

圓環倒計時我們經常見到,實現的方法也有很多種。但是本文將介紹一種全新的實現方式,使用SVG來實現倒計時功能。

本文主要用到了SVG的stroke-dasharray和stroke-dashoffset特性。下圖是倒計時運行效果:

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();

整個案例的代碼非常少,有喜歡的朋友可以將代碼保存到html中,運行一下,體驗體驗實際效果。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到HTML教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 麻豆视频在线观看免费网站 | 日韩 欧美 中文 | 毛片大全免费 | 久久久久久片 | 久久久国产精品网站 | 海外中文字幕在线观看 | www.mitao| chinese18 xxxx videos| 成人在线视频一区 | 国产亚洲美女精品久久久2020 | 日韩视频一区二区三区四区 | 一区二区三区在线播放视频 | 亚洲一区久久久 | 久久αv | 成人在线免费小视频 | 黄片毛片一级 | 欧美日韩高清一区 | 日日草夜夜 | 国产精品二区高清在线 | av电影院在线观看 | 久久成人视屏 | 欧洲色阁中文字幕 | 国产性tv国产精品 | 久久久久久久久久久一区 | 毛片视频大全 | 日韩av成人| 成人国产高清 | 一级毛片免费高清 | 一级电影中文字幕 | 97久久精品一区二区三区观看 | 作爱在线观看 | 性片免费看 | 黄色高清免费 | 免费黄色在线观看网站 | 成人午夜视频免费在线观看 | 久久亚洲成人 | hd日本xxxx | www.91在线| 草久在线观看视频 | 一级黄色毛片免费 | 欧美a一 |