jquery插件easyPieChart简单饼状图的应用、饼状图更新颜色,带有动画效果

jquery.easypiechart.js插件,用来统计新的访问、跳出率、服务器负载、使用的RAM等,带有HTML5的动画效果。

下面是简单版的效果图。
在这里插入图片描述

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>简单饼状图</title>
    <style>
        .easypie-chart-wrapper {
            display: flex;
        }

        .easypie-chart {
            display: inline-block;
            position: relative;
            padding: 0 6px;
            text-align: center;
        }

        .easypie-chart canvas {
            max-width: 100%;
        }

        .easypie-chart .text {
            position: absolute;
            width: 100%;
            top: 47px;
            left: 0;
        }

        .easypie-chart .text p {
            font-size: 24px;
            font-family: DINAlternate-Bold;
            margin: 10px;
        }

        .easypie-chart .text span {
            color: #999999;
        }

    </style>
</head>
<body class="easypie-chart-wrapper">

<div data-easypiechart class="easypie-chart easypie-chart-lg" data-percent="20">
	<!-- 饼状图描述可以放在所绑定渲染的div里 -->
    <div class="text">
        <p>20%</p>
        <span>完成率</span>
    </div>
</div>
<div data-easypiechart class="easypie-chart easypie-chart-lg" data-percent="60">
    <div class="text">
        <p>60%</p>
        <span>完成率</span>
    </div>
</div>
<div data-easypiechart class="easypie-chart easypie-chart-lg" data-percent="90">
    <div class="text">
        <p>90%</p>
        <span>完成率</span>
    </div>
</div>

<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.1.min.js"></script>
<script src="jquery.easypiechart.js"></script>
<script type="text/javascript">

    function initPie() {
        var options = {
            animate: {
                duration: 800,
                enabled: true
            },
            barColor: "lightgray",
            trackColor: "lightgray",
            scaleColor: false,
            lineWidth: 15,
            lineCap: 'round',
            size: 160
        };
        $('[data-easypiechart]').each(function (item) {
            var percent = $(this).attr("data-percent");
            // 根据数值显示不同的颜色
            var color = "#24c5a4";
            if (percent < 80 && percent >= 60) {
                color = "#ff902b";
            } else if (percent < 60) {
                color = "#f05050";
            }
            options.barColor = color;
            $(this).easyPieChart(options);
        })
    }

    initPie();
    
</script>
</body>
</html>

更新饼状图的颜色

其实,一般情况下用上面的代码就可以实现了,但有时候可能会出现一些更新颜色的需求,那可以试试下面的代码。

// 更新颜色
$('#easypie1').data('easyPieChart').update(percent).options.barColor = color;

插件资源

应该是官方git地址:rendro/easy-pie-chart
本博客所用的:jquery.easypiechart.js

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基于 jQuery 的逼真翻书效果插件动画示例: HTML 代码: ```html <div class="book-container"> <div class="book"> <div class="front-cover"></div> <div class="back-cover"></div> </div> </div> <button class="prev-page">Prev</button> <button class="next-page">Next</button> ``` CSS 代码: ```css .book-container { position: relative; width: 400px; height: 600px; margin: 0 auto; perspective: 2000px; } .book { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform-style: preserve-3d; transition: transform 1s; } .front-cover, .back-cover { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url(book-cover.jpg); background-size: cover; backface-visibility: hidden; } .back-cover { transform: rotateY(-180deg); } .prev-page, .next-page { position: absolute; top: 50%; transform: translateY(-50%); } .prev-page { left: 0; } .next-page { right: 0; } ``` jQuery 代码: ```javascript $(document).ready(function() { var currentPage = 1; var totalPages = 10; $('.prev-page').click(function() { if (currentPage > 1) { currentPage--; $('.book').css('transform', 'rotateY(' + (currentPage - 1) * -180 + 'deg)'); } }); $('.next-page').click(function() { if (currentPage < totalPages) { currentPage++; $('.book').css('transform', 'rotateY(' + (currentPage - 1) * -180 + 'deg)'); } }); }); ``` 解释: - HTML 中,书籍使用一个 `.book` 类的容器来包裹前后封面,容器再被包裹在一个 `.book-container` 类的容器中。 - `.prev-page` 和 `.next-page` 类分别表示向前翻页和向后翻页的按钮。 - CSS 中,容器使用 `perspective` 属性来产生透视效果,`.book` 类的容器使用 `transform-style` 属性设置为 `preserve-3d`,使其子元素沿着 3D 空间中的 X 轴旋转。 - `.front-cover` 和 `.back-cover` 类分别表示书籍的前封面和后封面,使用 `backface-visibility` 属性来隐藏背面。 - `.back-cover` 类使用 `transform: rotateY(-180deg)` 属性来将后封面翻转到正面。 - `.prev-page` 和 `.next-page` 类分别表示向前翻页和向后翻页的按钮,使用 `position` 和 `transform` 属性设置其位置和垂直居中。 - jQuery 中,使用 `$(document).ready()` 函数来确保页面加载完毕后再执行代码。 - `currentPage` 和 `totalPages` 变量分别表示当前页和总页数。 - `.prev-page` 和 `.next-page` 类的点击事件中,根据当前页和总页数来判断是否可以翻页,如果可以则使用 `.book` 类的 `transform` 属性来旋转到对应的位置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值