javascript - 在 html 页面中自定义计数器

标签 javascript jquery html css

下面是html建立计数器的例子(来源于网络)

JS

$(document).ready(function() {
      var positionFromTop = 100; 
        $(window).scroll(function() {
          var $y = $(window).scrollTop();
          if ($y >= positionFromTop) {
             var i;
             for (i = 0; i <= 5400; i += 100) { 
                setTimeout(Counter_Fn(i), 3000);
            }
        }
    });
    });

    function Counter_Fn(x) {
        document.getElementById("Counter_1").innerHTML = x;
    }
body {
  background-color: #F46A6A;
  color: #fff;
  max-width: 800px;
  margin: 1000px auto 0;
  text-align: center;
  display: table;
}

.counter {
  display: table-cell;
  margin: 1.5%;
  font-size: 50px;
  background-color: #FF6F6F;
  width: 200px;
  border-radius: 50%;
  height: 200px;
  vertical-align: middle;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<div id = "Counter_1" class="counter">0</div>

虽然这是我的基本目的,但我想添加更多细节如下

  1. 我希望当我向下滚动到特定点时(一旦加载页面)计数器应该开始。在当前示例中,计数器在页面加载时才开始,不会等我到达下面的位置
  2. 增量应该是 100 而不是 1
  3. 我还想在 1,000 之后使用逗号分隔符

任何实现上述功能的指针都将受到高度赞赏

最佳答案

1) 要在用户向下滚动到页面中的某个点时运行一些代码,您应该将代码放在一个函数中,然后在 $(document).ready() 中,您应该使用:

$(document).ready(function() {
  var positionFromTop = 1234; // for example
  $(window).scroll(function() {
    var $y = $(window).scrollTop();
    if ($y >= position) {
      callyourFunctionToCount();
    }
  });
}

2) 要使用与 1 不同的步骤,您不能使用 animate()。您应该使用某种定时计数器,就像描​​述得很好一样here , 例如。 https://stackoverflow.com/a/2540673/709439 .

3) 与第 2 点相同:使用计数器可以轻松设置增量值和输出格式。

关于javascript - 在 html 页面中自定义计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57676580/

相关文章:

Javascript循环倒数计时器

javascript - 一页上有多个 jQuery 图像库

jquery - 您可以搜索不在页面上但在变量中的选择器吗? -Jquery

jquery - 禁用 jQuery 中的正常滚轮功能?

javascript - 如何使用 JavaScript/jQuery 更改多维数组的输入键名称

CSS 将页脚保持在底部并扩展内容

javascript - 使用 jQuery Ajax 与 Node.js 和 Express 来验证发送电子邮件

javascript - 尝试迭代 Map 元素时出现 TypeError

javascript - 名称中包含下划线的函数的正则表达式

html - (响应网站)UL> LI的最小高度:100%,同时显示:内嵌和垂直对齐:顶部