接上篇

补充,有了自动滚动,让他点击的时候停止滚动,再点击继续滚动。怎么实现呢,就想到了setInterval和clearInterval。

添加点击事件:

$(document).ready(function() {let stop1 = setInterval(autoScroll1, 100)//滚动的$('#autoScroll1').click(function() {// console.log(stop1)if (stop1 != "autoScroll1") {clearInterval(stop1)stop1 = "autoScroll1";} else {stop1 = setInterval(autoScroll1, 100)}})function autoScroll1() {document.getElementById('autoScroll1').scrollTop += 1;// let max = document.getElementById('autoScroll1').scrollHeight - (document.getElementById('autoScroll1').screenTop + document.getElementById('autoScroll1').clientHeight);let autoScroll1 = document.getElementById('autoScroll1')//判断是否到滚动条底部,误差为1pxlet a = autoScroll1.scrollHeight;let b = autoScroll1.scrollTop;let c = autoScroll1.clientHeight;if (b + c >= a - 1) {document.getElementById('autoScroll1').scrollTop = 0}}})

总结,这里把setInterval 的返回值stop1重新赋值了,然后通过自己赋值的这个特殊的值(不会被随机数随机到的值)来判断是否在进行这个setInterval函数。

有兴趣的小伙伴自己可以试一下,在你clearInterval后,log一下这个返回值stop1,是一个随机的数字,本人猜想是:setInterval是一个宏任务,该随机数可能是任务栈中的队列数。(不一定对)

所以就给定一个自我定义的字符串,用来判断该任务是否被clear。

怎么判断setInterval的运行状态(是否停止)相关推荐

  1. setInterval的启动与停止,以及node-schedule的简单使用

    setInterval 简介 setInterval()方法可按照指定的周期来调用函数或者计算表达式(以毫秒为单位) setInterval 启动 语法 :setInterval(函数表达式,毫秒数) ...

  2. setInterval的停止方法

    网上查了一些资料,很多都是误导人的.现在把正确方法贴上来 建立定时任务 var referId = window.setInterval(function() {//dosomething1},300 ...

  3. 怎么停止html自动刷新桌面,怎么停止setinterval

    javascript可以单独停止setInterval吗? jquery setinterval怎么停止. 怎么停止setinterval 可以单独停止一个setInterval的,setInterv ...

  4. 判断线程是否执行完毕_关于线程池你不能不知道的东西

    前言 平时接触过多线程开发的童鞋应该都或多或少了解过线程池,之前发布的<阿里巴巴 Java 手册>里也有一条: 可见线程池的重要性. 简单来说使用线程池有以下几个目的: 线程是稀缺资源,不 ...

  5. windows服务,安装、启动、停止,配置,一个批处理文件搞定

    相对而言,还是比较通用的吧,如果哪位仁兄有更好的实现方式,或者发现有不足之处,还请多多指教.  @echo off echo.------------------------------------- ...

  6. android 获取Service(服务)的运行状态

    在开发的时候,经常会用到服务,有时候就会用到判断服务的运行状态,下面就创建一个工具类来判断服务是在还在运行. package cn.edu.cqu.mobilesafe.utils;import ja ...

  7. Document.visibilityState 页面监听 vue中实现离开页面时计时停止: 停止计时后从上一次开始计时

    概述 Document.visibilityState (只读属性), 返回document的可见性, 即当前可见元素的上下文环境. 由此可以知道当前文档(即为页面)是在背后, 或是不可见的隐藏的标签 ...

  8. 线程停止继续_线程不是你想中断就能中断

    这是我2021年的第2篇原创文章,原汁原味的技术之路尽在Jerrycodes 为什么不强制停止 如何用 interrupt 停止线程 sleep 期间能否感受到中断 停止线程的方式有几种 总结 启动线 ...

  9. 2.1、StopWatch 启动与停止(ok)

    run 方法第第一步就是 创建一个StopWatch,然后启动 public ConfigurableApplicationContext run(String... args) {// 1.Stop ...

最新文章

  1. GNN教程:DGL框架实现GCN算法!
  2. python增加一列数据计算年龄_无法使用python中的条件计算年龄。得到一个价值
  3. 公司新来的阿里p8,看了我做的APP和接口测试,甩给了我这份文档
  4. LOJ#2085 循环之美
  5. 什么是超融合数据中心网络?
  6. Java Graphics2D类的绘图方法
  7. SparkSubmit源码解读记录
  8. leetcode115. 不同的子序列
  9. python transform方法_Python transforms.BboxTransformFrom方法代码示例
  10. LeetCode 116/117 填充每个节点下一个右侧指针
  11. ai 文案_AI是UX文案的未来吗?
  12. 3月16日—3月20日四年级课程表
  13. 资源管理器清楚WPS网盘、百度网盘方法
  14. openjudge 1.9.14 铺地毯
  15. 最新DOS启动盘制作全攻略
  16. 基于Python实现的简易微信系统
  17. Android车载系统app性能自动化测试规划
  18. 通信教程 | I²C基础原理及通信协议
  19. 关于isEmpty(),null,“”的理解
  20. python的idle怎么运行_python中的idle是如何运行的

热门文章

  1. rosdep update time out及失败解决方案
  2. 常用网络测试命令——ipconfig命令
  3. 自学Web开发第十四天-基于VB和ASP.NET;丰富数据呈现:TreeView控件的使用及与GridView控件联动,深入研究从GridView中取数据
  4. 六安职院计算机专业,六安职业技术学院
  5. 联诚发祝你端午安康幸福美满
  6. win10 管理员删不掉文件 无法删除文件 要权限才能执行操作 无法更改所有者 安全模式解决
  7. 正则表达式 语法 分组
  8. Java进阶(十三)网络编程
  9. 2020年秋招:找工作的一些感想
  10. 关于对中医现状的想法