网站圆型百分比进度条返回顶部功能代码

一共就两个代码,一个是js加入到你网站main.js(没有就直接新建)。
另一个是css,也是一样的加到网站样式CSS文件(或者直接新建)。

  1. css代码

    #backtoTop {
    background-color:rgba(84,82,82,0.15);
    border-radius:100%;
    bottom:10%;
    height:33px;
    position:fixed;
    right:-100px;
    width:33px;
    transition:0.5s;
    -webkit-transition:0.5s
    }
    #backtoTop.button--show {
    right:2px
    }
    .per {
    font-size:16px;
    height:30px;
    line-height:30px;
    position:absolute;
    text-align:center;
    top:0;
    width:33px;
    color:#CD0000;
    cursor:pointer
    }
    .per:before {
    content:attr(data-percent)
    }
    .per:hover:before {
    content:"↑";
    font-size:15px
    }

  • JS代码

var bigfa_scroll = {
drawCircle: function(id, percentage, color) {
var width = jQuery(id).width();
var height = jQuery(id).height();
var radius = parseInt(width / 2.20);
var position = width;
var positionBy2 = position / 2;
var bg = jQuery(id)[0];
id = id.split("#");
var ctx = bg.getContext("2d");
var imd = null;
var circ = Math.PI * 2;
var quart = Math.PI / 2;
ctx.clearRect(0, 0, width, height);
ctx.beginPath();
ctx.strokeStyle = color;
ctx.lineCap = "square";
ctx.closePath();
ctx.fill();
ctx.lineWidth = 2; //转动圈线条大小
imd = ctx.getImageData(0, 0, position, position);
var draw = function(current, ctxPass) {
ctxPass.putImageData(imd, 0, 0);
ctxPass.beginPath();
ctxPass.arc(positionBy2, positionBy2, radius, -(quart), ((circ) * current) - quart, false);
ctxPass.stroke();
}
draw(percentage / 100, ctx);
},
backToTop: function($this) {
$this.click(function() {
jQuery("body,html").animate({
scrollTop: 0
},
800);
return false;
});
},
scrollHook: function($this, color) {
color = color ? color: "#000000";
$this.scroll(function() {
var docHeight = (jQuery(document).height() - jQuery(window).height()),
$windowObj = $this,
$per = jQuery(".per"),
percentage = 0;
defaultScroll = $windowObj.scrollTop();
percentage = parseInt((defaultScroll / docHeight) * 100);
var backToTop = jQuery("#backtoTop");
if (backToTop.length > 0) {
if ($windowObj.scrollTop() > 200) {
backToTop.addClass("button--show");
} else {
backToTop.removeClass("button--show");
}
$per.attr("data-percent", percentage);
bigfa_scroll.drawCircle("#backtoTopCanvas", percentage, color);
}

});
}
}

jQuery(document).ready(function() {
jQuery("body").append('<div id="backtoTop" data-action="gototop"><canvas id="backtoTopCanvas" width="33" height="33"></canvas><div class="per"></div></div>');
var T = bigfa_scroll;
T.backToTop(jQuery("#backtoTop"));
T.scrollHook(jQuery(window), "#000000");
});

  • 引用css和js
    直接在主题模板底部(footer.php)引用JS就好了(CSS已经默认引用)
<script type="text/javascript" src="https://1.342600.xyz/路径XXX/main.js"></script>

6161907.png