在我们平时的项目中,数据图表的交互应用也是比较多的,枯燥的数据配上酷炫的动画效果,会使其看上去并不那么乏味。
关于数据图标交互的插件,平时我们可能用的比较多的是highcharts、百度ECharts等等。今天分享自己最近才用到的一款:Pietimer。
Pietimer是一个可以在页面上生成一个扇形变化的定时器插件,它基于jQuery,可以自定义定时时间秒数,自定义扇形的颜色、宽度和高度等,并且支持定时结束时回调函数,可以控制开始和暂停,适用于需要定时器的页面如在线考试、倒计时,限时抢购等场景。它的最大优势就是简洁、易应用,易扩展。
OK,让我们一起来了解下。
HTML {#content}
首先加载jquery库文件和pietimer.js文件。
<script src="/demo/js/jq.js"></script>
<script src="/demo/js/jquery.pietimer.min.js"></script>
然后我们在页面上放置一个"开始"和一个"暂停"按钮,以及用来绘制扇形图形的元素.demo,然后就是用来提示定时完成的console.log("结束咯!");。
<style type="text/css">
.pietimer-box{margin:50px auto;width:500px;text-align:center}
.btn-fon{display:inline-block;margin:0 10px;width:120px;line-height:34px;background:#cc0;color:#fff;text-decoration:none}
.pause{background:#666}
.btn-fon:hover{background:#f00}
.pause:hover{background:#444}
.demo{margin-bottom:30px}
</style>
<div class="pietimer-box">
<div class="demo"></div>
<a class="btn-fon start" href="javascript://">start开始</a>
<a class="btn-fon pause" href="javascript://">pause暂停</a>
</div>
jQuery
首先我们要在.demo中绘制扇形,通过$('.demo').pietimer()调用,参数seconds表示定时时间(秒),color表示扇形的颜色,可以通过rgba来设置,也可以使用16进制颜色值,如#FFFFFF,width和height表示扇形的半径,紧接着的回调函数表示定时完成了时触发。
$(function(){
$('.demo').pietimer({
seconds: 2,
color: 'rgba(0,0,0,0.5)',
height:100,
width:100,
//is_reversed: true //是否逆时针转
},
function(){
//回调函数
console.log("结束咯!");
});
});
它有一些参数,看以下表格:
| 参数 | 说明 | |-------------|------------------------| | seconds | 时间秒数 | | color | 自定义扇形的颜色 | | width | 宽度 | | height | 高度 | | is_reversed | boolean是否逆转,默认false顺时针 |
上面的代码是绘制了一个扇形以及定义其相关参数选项,而实际要触发定时器则需要$('.demo').pietimer('start')来调用,同样暂停则是:$('.demo').pietimer('pause'),暂停后还可以点击"开始"继续定时器。
$(function(){
$('.start').click(function(){
$('.demo').pietimer('start');
return false;
});
$('.pause').click(function(){
$('.demo').pietimer('pause');
return false;
});
});
OK,我们一起来看个完整的demo,代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>分享一款基于jQuery扇形定时器功能插件 - Web前端之家</title>
<style type="text/css">
.pietimer-box{margin:50px auto;width:500px;text-align:center}
.btn-fon{display:inline-block;margin:0 10px;width:120px;line-height:34px;background:#cc0;color:#fff;text-decoration:none}
.pause{background:#666}
.btn-fon:hover{background:#f00}
.pause:hover{background:#444}
.demo{margin-bottom:30px}
</style>
</head>
<body>
<div class="pietimer-box">
<div class="demo"></div>
<a class="btn-fon start" href="javascript://">start开始</a>
<a class="btn-fon pause" href="javascript://">pause暂停</a>
</div>
<script type="text/javascript" src="https://www.jiangweishan.com/demo/js/jq.js"></script>
<script type="text/javascript" src="https://www.jiangweishan.com/demo/js/jquery.pietimer.min.js"></script>
<script type="text/javascript">
$(function(){
$('.demo').pietimer({
seconds: 2,
color: 'rgba(0,0,0,0.5)',
height:100,
width:100,
//is_reversed: true //是否逆时针转
},
function(){
//回调函数
console.log("结束咯!");
});
$('.start').click(function(){
$('.demo').pietimer('start');
return false;
});
$('.pause').click(function(){
$('.demo').pietimer('pause');
return false;
});
});
</script>
</body>
</html>
总结
这款插件相比其他的要简单很多,希望大家了解完后,能够应用到具体的项目中,如有问题都可以留言。