javascript - 如何为不同的ID分别运行相同的功能

标签 javascript jquery

我正在尝试为多个进度/加载栏设置动画。下面的代码按照我想要的方式工作,我可以复制并粘贴然后替换 ID 名称,但这似乎不必要地长。将 jquery 代码与不同类型的 ID(例如:#bar-x、#bar-y、#bar-z)一起使用的有效方法是什么?我尝试过用逗号分隔,如下所示

$(function() {
  var $stat = $('#bar-x, #bar-y, #bar-z');

  $stat.waypoint(function() {
    $stat.css({
    animation: "loading 1s linear",
    opacity: "1"
    });
  }, { offset: '95%' });
});

但是当第一个对象达到要求时,而不是每个单独的对象达到所述要求时,它会同时运行所有动画。

最佳答案

你总是可以将它包装在一个函数中并像这样使用它

function myAnimation(selector){
  selector.waypoint(function() {
    selector.css({
      animation: "loading 1s linear",
      opacity: "1"
    });
  }, { offset: '95%' });
}

myAnimation($('#bar-y'));

这样您就可以使用任何类型的选择器重复并可重复使用方式调用动画。

我建议阅读一些函数式编程。

关于javascript - 如何为不同的ID分别运行相同的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51486866/

相关文章:

javascript - 使用ajax post方法将变量从javascript传递到php

javascript - 如何通过映射函数ReactJS传递this.params

javascript - 从表单监视更新时更新 Angular Directive 模型的值时出现问题

javascript - 使用 javascript 对输入类型进行格式编码

javascript - 检查 contenteditable div 中的元素(文本)是否已被删除

javascript - 无法将 html 文件链接到 jquery

javascript - 当我在数据表中添加按钮(打印)时,lengthChange 不显示

javascript - 如何设置参数值 - Javascript

javascript - <Span> 未在 <p> 内显示

php - 像在 JQuery 中一样在 JavaScript 中调用函数