如何将jQuery动画函数转换为纯JS

可兰尼

我有这个简单的jquery逻辑,如何将其转换为纯JavaScript?

此外,我必须在React with Typescript中使用此代码。

我不知道该从哪里开始。任何帮助将不胜感激。


$('.counting').each(function() {
  var $this = $(this),
      countTo = $this.attr('data-count');
  
  $({ countNum: $this.text()}).animate({
    countNum: countTo
  },

  {
    duration: 3000,
    easing:'linear',
    step: function() {
      $this.text(Math.floor(this.countNum));
    },
    complete: function() {
      $this.text(this.countNum);
      //alert('finished');
    }
  });  
});

我已经将其转换为开始动画功能。

let counting = document.querySelectorAll(".counting");
let countingArray = Array.prototype.slice.call(counting);

countingArray.forEach((el) => {
  let   countTo = el.getAttribute("data-count");

//start animate...

我在https://codepen.io/shvvffle/pen/JRALqG中引用了此代码

西蒙米森

为您提供动画功能:

function animate(render, from, to, duration, timeFx) {
  let startTime = performance.now();
  requestAnimationFrame(function step(time) {
    let pTime = (time - startTime) / duration;
    if (pTime > 1) pTime = 1;
    render(from + (to - from) * timeFx(pTime));
    if (pTime < 1) {
      requestAnimationFrame(step);
    }
  });
}
  • render 是您希望用来更新新值的回调函数;
  • from并且to是初始值和动画的目标值;
  • duration 是动画在时间上的持续时间(以毫秒为单位);
  • timeFx 是从[0,1]到[0,1]的计时功能。

您可以将其用作:

countingArray.forEach((el) => {
  let countTo = el.getAttribute("data-count");
    animate(function(newValue) {
        el.innerText = Math.floor(newValue);
    }, 0, countTo, 3000, x => x);
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将jQuery':not(:has(*)):not(a *):not(a)'转换为TreeWalker的纯js?

来自分类Dev

如何将SVG CSS动画转换为纯JS代码

来自分类Dev

如何将 jQuery 的 $.get 转换为纯 JavaScript?

来自分类Dev

将jQuery函数转换为纯JavaScript

来自分类Dev

如何将以下递归函数转换为纯函数?

来自分类Dev

如何将此函数转换为纯函数?

来自分类Dev

如何将C ++类转换为托管类并在其中调用纯虚函数?

来自分类Dev

如何将UI的纯UI函数转换为ES6类?

来自分类Dev

如何将jQuery代码转换为函数?

来自分类Dev

如何将转换转换为函数?

来自分类Dev

将jquery的每个函数转换为纯javascript

来自分类Dev

如何将XPath元素转换为纯HTML文本?

来自分类Dev

如何将HTML转换为纯文本

来自分类Dev

如何将RelayJS连接转换为纯数组?

来自分类Dev

如何将HTML标记转换为纯文本?

来自分类Dev

如何将纯文本转换为html标记

来自分类Dev

如何将XPath元素转换为纯HTML文本?

来自分类Dev

如何将SHA转换为纯文本?

来自分类Dev

如何将.epub文件转换为纯文本?

来自分类Dev

如何将此功能从jquery转换为纯javascript?

来自分类Dev

如何将此功能从jquery转换为纯javascript?

来自分类Dev

如何将 jQuery 对象转换为 JS 数组?

来自分类Dev

将纯 JS 转换为 array[i].className 的 jquery?

来自分类Dev

如何将函数转换为MooTools?

来自分类Dev

如何将向量转换为函数

来自分类Dev

将angularjs转换为纯js或如何将单个服务器用于angular JS和Flask

来自分类Dev

如何将XAML代码的动画转换为C#

来自分类Dev

如何将svg动画转换为可滚动显示?

来自分类Dev

如何将动画转换为视频格式?

Related 相关文章

热门标签

归档