我正在尝试使用Jquery countTo插件以及当我的视口到达网页上的某个点时运行的一些额外脚本。一切顺利,除了{I-}}动画在我滚动页面时连续运行的事实,即使动画已经淡入并完成。
这是代码。
countTo
有什么建议吗?
答案 0 :(得分:0)
$('.timer3').countTo({
from: 10,
to: 784,
speed: 3000,
refreshInterval: 50,
onComplete: function(value) {
console.debug(this);
}
}, {triggerOnce: true});
triggerOnce:true,允许它只执行一次。
答案 1 :(得分:0)
我会把它放在这里以防万一有人仍觉得它有用 这是针对jquery-countTo https://github.com/mhuggins/jquery-countTo
我们需要计算位置以检查元素“myelement”是否显示,并对其做些什么。
在这种情况下,我们计算位置以查看我们是否已经到达元素,然后调用方法并通过将“eventFired”设置为true来标记它;
HTML:
<div id="myelement">
<span class="timer" data-from="0" data-to="75"
data-speed="500" data-refresh-interval="1">
</span>
</div>
Jquery的:
var eventFired = false,
objectPositionTop = $('#myelement').offset().top;
$(window).on('scroll', function() {
var currentPosition = $(document).scrollTop()+100;
if (currentPosition >= objectPositionTop && eventFired === false) {
eventFired = true;
$('.timer').countTo();
}
});
当访问元素“myelement”时,这将成功执行一次计数器。