婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > html svg生成環形進度條的實現方法

html svg生成環形進度條的實現方法

熱門標簽:地圖標注軟件打印出來 黃石ai電銷機器人呼叫中心 欣鼎電銷機器人 效果 高德地圖標注商戶怎么標 ok電銷機器人 惡搞電話機器人 如何查看地圖標注 智能電銷機器人被禁用了么 電話機器人技術

之前在項目中遇到一個環形進度條的需求,要求能實時更新進度,腦海中瞬間便蹦出css,svg,canvas3中方案,對于3種方案個人更偏向于svg,用法簡單,代碼量也很少,同時也便于實時控制。具體效果如下圖:

代碼非常簡單:

<svg width="150px" height="150px" class="svg">
    <circle r="70" cy="75" cx="75" stroke-width="8" stroke="#EAEFF4" stroke-linejoin="round" stroke-linecap="round" fill="none"/>
    <circle class="progress" r="70" cy="75" cx="75" stroke-width="8" stroke="#1593FF" stroke-linejoin="round" stroke-linecap="round" fill="none" stroke-dashoffset="0px"  stroke-dasharray="471px" />
</svg>

為了便于演示,我們先用css動畫控制:

svg {
    transform: rotate(-90deg);
}
.progress {
    animation: rotate 1500ms linear both;
}
@keyframes rotate {
    from {
        stroke-dashoffset: 471px;
    }
    to {
        stroke-dashoffset: 0px;
    }
}

實現原理

實現原理非常簡單,就是應用svg的stroke-dashoffset和stroke-dasharray屬性。

stroke-dasharray

官方解釋為可控制用來描邊的點劃線的圖案范式,即定義虛線每段長度即虛線間間隔,數與數之間用逗號或者空白隔開,指定短劃線和缺口的長度。如果提供了奇數個值,則這個值的數列重復一次,從而變成偶數個值。

stroke-dashoffset

標識的是整個路徑的偏移值。

通過控制虛線的間隔與偏移值,便可以行程各種各樣的線條動畫,當然我們還可以通過js控制,如下:

let path = document.querySelector('#path');
// 可獲取路徑的長度
let len = path.getTotalLength();
path.style.cssText = `stroke-dasharray:"${number}"`;

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

標簽:金昌 中山 萍鄉 盤錦 阿壩 赤峰 綏化 聊城

巨人網絡通訊聲明:本文標題《html svg生成環形進度條的實現方法》,本文關鍵詞  html,svg,生成,環形,進度,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《html svg生成環形進度條的實現方法》相關的同類信息!
  • 本頁收集關于html svg生成環形進度條的實現方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 赫章县| 东兰县| 牙克石市| 潞西市| 南丹县| 射洪县| 鹤庆县| 垣曲县| 阳城县| 和林格尔县| 阿坝县| 清苑县| 丰台区| 山阴县| 阿拉善左旗| 治多县| 尼木县| 聂荣县| 曲水县| 通海县| 上栗县| 中西区| 汝城县| 乐山市| 措美县| 松滋市| 卢氏县| 鸡东县| 福建省| 三门县| 张家口市| 清徐县| 富裕县| 读书| 清原| 乐业县| 镇巴县| 临安市| 山西省| 洛南县| 泊头市|