久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

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

這篇文章主要介紹了SVG實現多彩圓環倒計時效果的示例代碼,本文主要用到了SVG的stroke-dasharray和stroke-dashoffset特性 ,具有一定的參考價值,有興趣的可以了解一下

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

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

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中,運行一下,體驗體驗實際效果。

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

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。
svg

相關文檔推薦

主站蜘蛛池模板: 一区二区三区四区在线视频 | 亚洲福利电影网 | 九九久久久 | 亚洲国产一区在线 | 在线视频a| 欧美日韩在线视频观看 | 天天干夜夜操视频 | 91在线精品一区二区 | 亚洲一区 中文字幕 | 国产成人免费视频网站高清观看视频 | 日本一二三区高清 | 亚洲一区二区三区免费在线观看 | 天堂色区| 99久久久99久久国产片鸭王 | 久久久久成人精品免费播放动漫 | 免费精品久久久久久中文字幕 | 在线亚州 | 亚洲午夜精品一区二区三区他趣 | 一区影院 | 在线免费国产视频 | 国产精品视频免费观看 | 亚洲在线一区 | 国内久久 | 国产欧美一区二区三区在线看 | 国产成人福利在线 | 黄色免费在线观看网站 | 91在线精品秘密一区二区 | 国产a级毛片 | 岛国毛片在线观看 | 欧美福利一区 | 午夜电影网址 | 91原创视频 | 在线观看www | 亚洲九九精品 | 99精品观看 | 国产精品高清一区二区三区 | 日韩羞羞 | 中文字幕在线观看日韩 | 九九亚洲 | 色综合网站 | 午夜免费网 |