Javascript 图像周围的圆形进度条

Javascript 图像周围的圆形进度条,javascript,html,css,semantic-ui,Javascript,Html,Css,Semantic Ui,我想在图片周围的进度条上获得一些帮助。我在下面提供了我的代码。如果有人能帮忙,我们将不胜感激 我需要的示例(红色圆圈是“图像”,绿色条是围绕图像旋转的百分比条): 代码: <div class="imgmeter"> <div class="img-percent-bar"> <td class="usrimg"> <img src="assets/img/img.png">

我想在图片周围的进度条上获得一些帮助。我在下面提供了我的代码。如果有人能帮忙,我们将不胜感激

我需要的示例(红色圆圈是“图像”,绿色条是围绕图像旋转的百分比条):

代码:

<div class="imgmeter">
    <div class="img-percent-bar">
        <td class="usrimg">
            <img src="assets/img/img.png">
            <div class="bar"></div>
        </div>
        <div class="percentage">
            <i><b>50.00%</b></i>
        </div>
    </div>

50.00%

这可以通过使用
svg
元素来完成,该元素带有一个
,该圆在其样式中具有
笔划数组
属性。然后可以使用JavaScript设置圆的“stroke dasharray”属性

var circle=document.getElementById(“循环加载器”),
百分比=document.getElementById(“百分比”),
radius=document.getElementById(“radius”);
document.getElementById(“percentage”).addEventListener(“change”,function(){//
var DASHARY=(数字(百分比值)*2*数字((数字(半径值)*数学圆周率))+“,”+((1-数字(百分比值))*2*数字((数字(半径值)*数学圆周率));
circle.style.strokeDasharray=dasharray;//设置dasharray
});
radius.addEventListener(“change”,function(){//当半径更改时
var DASHARY=(数字(百分比值)*2*(数字(半径值)*数学PI))+“,”+((1-数字(百分比值))*2*(数字(半径值)*数学PI));
circle.style.strokeDasharray=dasharray;//设置dasharray
circle.setAttribute(“r”,radius.value);//设置半径
circle.style.strokedashcoffset=Number(radius.value)*Math.PI*0.5;//将笔划的起点设置为圆的顶部
});
#svg#u循环#u加载器{
背景:无;
边界:无;
保证金:无;
填充:无;
}
#圆形装载机{
填充:无;
行程:#F00;
笔划宽度:10px;
/*旋转圆的笔划,使起点位于顶部*/
行程偏移:78.5;
/*0是笔划填充的弧的长度,314是直径(2倍圆半径)乘以pi(3.14…),即彩色笔划弧之间的“间隙”*/
笔划数组:0314;
/*不需要,但会使它看起来更平滑*/
过渡:所有0.2s线性;
}


半径

完成百分比
这可以通过使用
svg
元素来完成,该元素带有一个
,该圆在其样式中具有
笔划数组
属性。然后可以使用JavaScript设置圆的“stroke dasharray”属性

var circle=document.getElementById(“循环加载器”),
百分比=document.getElementById(“百分比”),
radius=document.getElementById(“radius”);
document.getElementById(“percentage”).addEventListener(“change”,function(){//
var DASHARY=(数字(百分比值)*2*数字((数字(半径值)*数学圆周率))+“,”+((1-数字(百分比值))*2*数字((数字(半径值)*数学圆周率));
circle.style.strokeDasharray=dasharray;//设置dasharray
});
radius.addEventListener(“change”,function(){//当半径更改时
var DASHARY=(数字(百分比值)*2*(数字(半径值)*数学PI))+“,”+((1-数字(百分比值))*2*(数字(半径值)*数学PI));
circle.style.strokeDasharray=dasharray;//设置dasharray
circle.setAttribute(“r”,radius.value);//设置半径
circle.style.strokedashcoffset=Number(radius.value)*Math.PI*0.5;//将笔划的起点设置为圆的顶部
});
#svg#u循环#u加载器{
背景:无;
边界:无;
保证金:无;
填充:无;
}
#圆形装载机{
填充:无;
行程:#F00;
笔划宽度:10px;
/*旋转圆的笔划,使起点位于顶部*/
行程偏移:78.5;
/*0是笔划填充的弧的长度,314是直径(2倍圆半径)乘以pi(3.14…),即彩色笔划弧之间的“间隙”*/
笔划数组:0314;
/*不需要,但会使它看起来更平滑*/
过渡:所有0.2s线性;
}


半径

完成百分比
请向我们展示您为实现目标所做的尝试/研究,或在过程中出现的错误。请参考此。请向我们展示您的css。可能重复的请向我们展示您为实现目标所做的尝试/研究,或在过程中出现的错误。请参考此。请向我们展示您的css。可能重复的