【发布时间】:2014-12-13 08:45:35
【问题描述】:
我正在使用 LugoLabs 的这个名为“Circles”的 jquery 插件来为我正在构建的网站上的一些饼图制作动画。 (https://github.com/lugolabs/circles)
效果很好,但是饼图动画在页面加载时开始,我想延迟它直到被查看者看到。
是否可以使用 viewportchecker.js (https://github.com/dirkgroenen/jQuery-viewport-checker) 之类的东西来仅在有人查看动画时才启动动画?我之前在其他项目中成功使用过它,但我很难将它与现有的 javascript 集成。
----示例设置---
HTML:
<div class="circle" id="circles-1"></div>
脚本:
var myCircle = Circles.create({
id: 'circles-1',
radius: 60,
value: 43,
maxValue: 100,
width: 10,
text: function(value){return value + '%';},
colors: ['#D3B6C6', '#4B253A'],
duration: 400,
wrpClass: 'circles-wrp',
textClass: 'circles-text'
styleWrapper: true,
styleText: true
});
【问题讨论】:
-
如果你错过了 - 圈子 github 有一个例子:github.com/lugolabs/circles/blob/master/spec/viewport.html,完成一个函数
elementInViewport(),我刚刚将它添加为 Fiddle jsfiddle.net/d5b4r5q1 -
谢谢!我试过了,但由于某种原因无法让它工作。会再试一次。
-
抱歉这些愚蠢的问题,但是您如何将上述脚本插入到该 javascript 中以使其工作?当我做我认为有意义的事情时,它没有运行。它的格式略有不同,因为它不使用递增的数值变量来创建圆圈。
-
我刚刚用你的圈子更新了 Fiddle,不知道它是否应该是这样的:jsfiddle.net/2vz6zb13我刚刚将你的代码添加到
createCircles-function 中并添加了一个,在您的设置中错过的textClass: 'circles-text'之后。 -
效果很好!谢谢! (如果您作为答案提交,我会标记它)
标签: javascript jquery animation jquery-plugins