JS之setTimeOut与clearTimeOut

小练习1:针对HTML,分别使用 setTimeout 和 setInterval 实现以下功能:

  • 点击按钮时,开始改变 fade-obj 的透明度,开始一个淡出(逐渐消失)动画,直到透明度为0
  • 在动画过程中,按钮的状态变为不可点击
  • 在动画结束后,按钮状态恢复,且文字变成“淡入”
  • 在 按钮显示 淡入 的状态时,点击按钮,开始一个“淡入”(逐渐出现)的动画,和上面类似按钮不可点,直到透明度完全不透明
  • 淡入动画结束后,按钮文字变为“淡出”
  • 暂时不要使用 CSS animation (以后我们再学习)
<!DOCTYPE html>
<html>
<head><meta charset="utf-8" /><title>与页面对话4</title>
</head>
<body><div id="fade-obj" style="width:300px;height:300px;background:#000;opacity: 1;"></div><button id="fade-btn" onclick="beLowOpa()">淡出</button><script>var opaCount = 1;var btn= document.getElementById("fade-btn");function beLowOpa() {btn.disabled = true;opaCount -= 0.05;document.getElementById("fade-obj").style.opacity = opaCount;var t = setTimeout("beLowOpa()", 100);if (opaCount <= 0) {clearTimeout(t);btn.disabled = false;btn.innerHTML = "淡入";btn.addEventListener("click", beHighOpa);}}function beHighOpa() {btn.disabled = true;opaCount  = 0.05;document.getElementById("fade-obj").style.opacity = opaCount;var t = setTimeout("beHighOpa()", 100);if (opaCount >= 1) {clearTimeout(t);btn.disabled = false;btn.innerHTML = "淡出";btn.addEventListener("click", beLowOpa);}}</script>
</body></html>

 


更多专业前端知识,请上 【猿2048】www.mk2048.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366034.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

运行时的Java 8参数名称

Java 8将引入一种更容易的方法来发现方法和构造函数的参数名称。 在Java 8之前&#xff0c;找到参数名称的方法是在编译阶段打开调试符号&#xff0c;这会在生成的类文件中添加有关参数名称的元信息&#xff0c;然后提取复杂的信息&#xff0c;需要处理字节码。获取参数名称。…

python 可执行文件_如何通过Python函数运行的可执行文件的终端...

我想抑制运行可执行文件的函数产生的所有终端输出. 我试图通过使用每次调用函数时临时重新定义stdout和stderr的上下文管理器来抑制Python函数的输出.这会抑制函数中的print调用产生的终端输出,但是当函数调用产生终端输出的可执行文件时,它似乎不起作用. 那么,如何抑制Python函…

嵌入式linux系统文件,嵌入式Linux文件系统知多少

Nand/Nor Flash在嵌入式Linux产品中&#xff0c;通常使用的存储介质为Nand Flash和Nor Flash&#xff0c;而手机、相机等产品通常使用eMMC、SD Card作为存储介质&#xff0c;导致这种差异的原因主要是成本考量。Nand Flash和Nor Flash具有低成本、高密度存储的优势。但是&#…

三分钟上手Highcharts简易甘特图

根据业务需求&#xff0c;找到了这个很少使用的图形&#xff0c;话不多说&#xff0c;看看该如何使用。首先要引入支持文件&#xff1a;可根据链接下载。 exporting.js&#xff1a;https://img.hcharts.cn/highcharts/modules/exporting.js xrange.js&#xff1a;https://img.h…

WEB语义化

WEB语义化让机器读懂内容&#xff0c;HTML就带有一定「语义」的标签&#xff0c;比如段落&#xff0c;标题&#xff0c;表格和图片等。让机器读懂内容&#xff0c;那么两种方案&#xff1a;第一种让机器变得更人工智能化&#xff0c;也就是现在大火的AI。第二种是人们去发布认可…

Jetty 9.1上的Java WebSockets(JSR-356)

最终发布了Jetty 9.1 &#xff0c;将Java WebSockets&#xff08;JSR-356&#xff09;引入了非EE环境。 这真是个好消息&#xff0c;今天的帖子将介绍如何将这个出色的新API与Spring Framework一起使用。 JSR-356定义了基于注释的简洁模型&#xff0c;以允许现代Java Web应用程…

如何用python画组合图形_python结合G2绘制精美图形

$.getJSON(top10.json, function (data) { var Frame G2.Frame; var frame new Frame(data); var chart new G2.Chart({ id: c1, width: 500, height: 400 }); chart.source(frame, { pct: {alias: 年化相对收益率(%)}, }); // 去除 X 轴标题 chart.axis(name, { title: nul…

edup无线网卡驱动安装linux,UBUNTU_15.0.4 usb无线网卡驱动安装方法

前言&#xff1a;为了摆脱网线的束缚&#xff0c;我买了个无线网卡&#xff1b; widnows 上好用&#xff0c;易安装。linux 上&#xff0c;按照自带教程上去做&#xff0c;没有成功。后来在搜索了多篇 解决问题的文章。 再加上自己的方法&#xff0c;终于完成了。貌似信号还可以…

LeetCode Golang 9.回文数

9. 回文数 第一种办法 &#xff1a;itoa 转换为字符串进行处理&#xff1a; package mainimport ("strconv""fmt" )//判断一个整数是否是回文数。回文数是指正序&#xff08;从左向右&#xff09;和倒序&#xff08;从右向左&#xff09;读都是一样的整数。…

关于使用JQ scrollTop方法进行滚动定位

没图我说个锤子&#xff0c;先来个自拍镇楼。 又到了每周周五总结时间。我广州刘德华又来讲故事了。这一周没啥任务&#xff0c;就一个任务&#xff0c;产品口头交代了两句&#xff0c;也没有psd没有设计图没有样式。自由发挥&#xff0c;你自己敲代码做个作品出来。 what&…

ssh密钥登录

方法一:使用下例中ssky-keygen和ssh-copy-id&#xff0c;仅需通过3个步骤的简单设置而无需输入密码就能登录远程Linux主机。 ssh-keygen 创建公钥和密钥。 ssh-copy-id 把本地主机的公钥复制到远程主机的authorized_keys文件上。ssh-copy-id 也会给远程主机的用户主目录&#x…

Spring REST:异常处理卷。 2

这是有关使用Spring进行REST异常处理的系列的第二篇文章。 在我以前的文章中&#xff0c;我描述了如何在REST服务中组织最简单的异常处理。 这次&#xff0c;我将更进一步&#xff0c;我将向您展示何时最好在ControllerAdvice级别上使用异常处理 。 介绍 在开始本文的技术部分…

python 装饰器有哪些_python装饰器有什么用

简言之&#xff0c;python装饰器就是用于拓展原来函数功能的一种函数&#xff0c;这个函数的特殊之处在于它的返回值也是一个函数&#xff0c;使用python装饰器的好处就是在不用更改原函数的代码前提下给函数增加新的功能。 一般而言&#xff0c;我们要想拓展原来函数代码&…

jQuery数据转换与提交

json2.js序列化,即JSON对象转换成String字符串&#xff1a; JSON.stringify({ id: 1, name: jsons });反序列化,即String转JSON对象&#xff1a; JSON.parse("{ id: 1, name: jsons }");jquery.json2xml.jsJSON对象转换为XML字符串&#xff1a; $.json2xml({ id: 1, …

linux中查看相关日志记录,linux重启查看日志及历史记录 查询原因

linux系统文件通常在/var/log中下面是对下面常出现的文件进行解释/var/log/message ---------------------------------------系统启动后的信息和错误日志/var/log/secure ------------------------------------------与安全相关的日志信息/var/log/maillog ------------------…

04,认证、权限、频率

认证组件 Django原生的authentic组件为我们的用户注册与登录提供了认证功能&#xff0c;十分的简介与强大。同样DRF也为我们提供了认证组件&#xff0c;一起来看看DRF里面的认证组件是怎么为我们工作的&#xff01;models.py# 定义一个用户表和一个保存用户Token的表 class Use…

sun.misc.Unsafe和堆外内存

sun.misc.Unsafe类允许您执行许多Java中不应该做的事情&#xff0c;但是在非常特殊的情况下仍然有用。 必须在99&#xff05;的时间避免这种情况&#xff0c;但是在极少数情况下&#xff0c;这是唯一有意义的解决方案。 这篇文章考虑了它在OpenHFT中的使用方式以及我希望在Jav…

jq获取input选取的文件名_tushare获取交易数据并可视化分析

获取数据是金融量化分析的第一步&#xff0c;找不到可靠、准确的数据&#xff0c;量化分析就无从谈起。随着信息技术的不断发展&#xff0c;数据获取渠道也越来越多&#xff0c;尤其是Python网络爬虫&#xff0c;近几年愈来愈火。然而&#xff0c;很多人毕竟精力有限&#xff0…

linux电脑做笔记软件,知识管理工具, 自由格式数据库, 笔记软件以及个人信息管理...

myBase Desktop 7.3.5 for Linux/MacOSX/Windows 2020-2-20新增 [数学公式 MathJax for Markdown]、[自动锁屏保护]、[粘贴图片为附件]、[完整复制带图片内容]&#xff0c;以及部分问题修订&#xff0c;详见&#xff1a;更新日志&#xff1b;数学公式插件&#xff1a;缺省安装后…

js模板引擎

模板引擎 function tmpl(str, o) {return str.replace(/\\?\{([^{}] )\}/g, function (match, name) {return (o[name] undefined) ? : o[name];});}调用示例 var html tmpl(html, { user_id: user_id, user_name: user_name });更多专业前端知识&#xff0c;请上 【猿204…