jQuery圆形滚动条动态加载loading效果

<style>

* {

margin: 0;

padding: 0;

}

 

.wrap,

.circle,

.percent {

position: absolute;

width: 200px;

height: 200px;

border-radius: 50%;

}

 

.wrap {

top: 50px;

left: 50px;

background-color: #ccc;

}

 

.circle {

box-sizing: border-box;

border: 20px solid #ccc;

clip: rect(0, 200px, 200px, 100px);

}

 

.clip-auto {

clip: rect(auto, auto, auto, auto);

}

 

.percent {

box-sizing: border-box;

top: -20px;

left: -20px;

}

 

.left {

transition: transform ease;

border: 20px solid #bc5574;

clip: rect(0, 100px, 200px, 0);

}

 

.right {

border: 20px solid #bc5574;

clip: rect(0, 200px, 200px, 100px);

}

 

.nothing {

width: 0;

}

 

.num {

position: absolute;

box-sizing: border-box;

width: 160px;

height: 160px;

line-height: 160px;

text-align: center;

font-size: 40px;

left: 20px;

top: 20px;

border-radius: 50%;

background-color: #fff;

z-index: 1;

}

</style>

 

<body>

<div class="wrap">

<div class="circle">

<div class="percent left"></div>

<div class="percent right nothing"></div>

</div>

<div class="num"><span class="export">0</span>%</div>

</div>

</body>

 

<script src="js/jquery.min.js"></script>

<script>

var percent = 0;//初始化百分比

var rcent = 100;//需要显示的百分比

var loading = setInterval(function() {

if(percent > 100) {

percent = 0;

$('.circle').removeClass('clip-auto');

$('.right').addClass('nothing');

} else if(percent > 50) {

$('.circle').addClass('clip-auto');

$('.right').removeClass('nothing');

}

$('.left').css("-webkit-transform", "rotate(" + (18 / 5) * percent + "deg)");

$('.export').text(percent);

if(percent == rcent){

//加载完成

clearInterval(loading);

}else{

percent++;

}

}, 50);

</script>

转载于:https://my.oschina.net/af666/blog/1589252

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值