时间:2019-08-02
编辑:网站制作公司
711
0
运动和动画,如果操作得当,可以使您的网站更具吸引力。使用数据表示和信息图表的网站就是一个很好的例子。使用我们之前创建的动画框架 ,在本教程中,您将学习如何动画三个信息图示例:数据计数器,进度条和循环进度条。
信息图表本身不是动画,它们是静态形式的数据表示。我们将采用静态信息图表网页并添加一些动画。从上一篇文章中你可以看到,我们的动画在被事件执行时就会发生。在我们的示例中,我们将使用网页滚动事件,因此一旦它们进入窗口视口,我们将在页面滚动上设置各种信息图块的动画。
郑州网站建设首先让我们从数据计数器开始。他们在这里,动画中期:
向下滚动演示页面以查看它们的运行情况。打开controller.js文件并找到该INFOGRAPHICS部分(第151行)。你会看到代码:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | $('.et-counter').each(function(){ var $this = $(this); var $thisTo = $this.data('to'); $(this).waypoint({ handler: function(direction) { var element = $(this.element); element.addClass('active'); element.find('.counter').countTo({ from: 0, to: $thisTo, speed: 2000, refreshInterval: 30 }); this.destroy(); }, offset: '75%', }); }); |
使用航点,我们可以检测每个计数器何时进入视口并在那时执行数据计数。打开index.html文件,找到包含该类的元素et-counter。它有一个重要且必需的属性data-to- 这是我们应该从0开始计算的数字。在这里放置你想要的任何整数值。如果你想要动画多个计数器,只需复制并更改数据到值; 他们将以相同的持续时间制作动画。一旦计数器进入视口,我们将添加一个active类并执行插件调用。
使用计数器元素,您可以使用Fontawesome图标和数字后缀,如1000k或10b。您也可以修改它以使用类似$ 1000的前缀。
为了使动画更具吸引力,我将列动画与计数器动画结合起来。
下一个元素是我们的进度条。此元素对基于百分比的数据动画很有用。打开index.html文件,找到包含该类的元素et-progress。它包含一个带有bar类的div - 你会注意到它有一个属性data-percentage。输入0-100之间的任何整数值,然后打开controller.js文件并找到代码:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | $('.et-progress').each(function(){ var $this = $(this); var bar = $this.find('.bar'); var percentage = bar.data('percentage'); var percent = $this.find('.percent'); $(this).waypoint({ handler: function(direction) { bar.addClass('visible') .animate({width: percentage+'%'}, 2000); percent.addClass('visible') .countTo({ from: 0, to: percentage, speed: 2000, refreshInterval: 30 }); this.destroy(); }, offset: '75%', }); }); |
从代码中可以看出,我们首先确保进度条在viewport中使用waypoints插件。之后,我们将bar div的宽度从0设置为输入的百分比值,我们还使用您在上一个示例中已熟悉的countTo插件设置百分比数字的动画。在这里,您还可以修改进度条以获得动态颜色数据属性(我制作了预定义的颜色)。再次为了使演示更具吸引力,我将进度条动画与列动画结合起来。
我们的最后一个例子是循环进度条。这个元素背后的逻辑非常类似于常规进度条元素,但样式是不同的。
同样,使用航点,我们需要确保圆形进度条位于视口中。之后我们将调用两个插件:easyPieChart和我们的第一个示例中的countTo。
打开index.html并找到包含该类的元素et-circle-progress。你会看到它data-percentage和data-bar属性。第一个是0-100的百分比值。第二个是动画条的颜色。当插件创建一个画布来为圆圈的进度设置动画时,我们需要传递颜色。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 三十 31 32 33 34 35 36 37 38 39 40 | $('.et-circle-progress').each(function(){ var $this = $(this); var bar = $this.data('bar'); var track = $this.data('track'); var percentage = $this.data('percent'); var percent = $this.find('.percent'); var size = 200; if ($this.hasClass('size-medium')) {size = 240;} if ($this.hasClass('size-large')) {size = 300;} $this.waypoint({ handler: function(direction) { $(this.element).addClass('visible'); $(this.element).easyPieChart({ barColor: bar, trackColor: (typeof track == "undefined") ? "#eeeeee" : track, lineCap:'square', lineWidth:16, size:size, animate:'1500', scaleColor: false }); percent.countTo({ from: 0, to: percentage, speed: 2000, refreshInterval: 30 }); this.destroy(); }, offset: 'bottom-in-view', }); }); |
这些只是您可以添加到HTML页面的三个数据信息图表示例,但即使这些也会将您的演示体验提升到新的水平。如果您在模板或CMS主题中使用数据图表,我强烈建议您添加尽可能多的自定义,例如大小,附加图标支持和微动画。
郑州网站建设您可以自由使用练习文件中的所有示例,您可以在下面的评论中自由修改和提出建议。谢谢阅读!
3
s后返回登录3
s后返回登录