效果图:

代码

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title>红绿灯倒计时</title><style>.box {width: 250px;height: 52px;padding: 15px 30px;border: 2px solid #ccc;border-radius: 16px;margin: 0 auto;}.box .count {width: 60px;color: #666;font-size: 280%;line-height: 50px;padding-left: 6px;margin-left: 5px;border: 1px solid #fff}.box div {margin-left: 5px;float: left;width: 50px;height: 50px;border-radius: 50px;border: 1px solid #666;}.gray {background-color: #eee;}.red {background-color: red;}.yellow {background-color: yellow;}.green {background-color: #26ff00;}</style></head><body><div class="box"><div id="red"></div><div id="yellow"></div><div id="green"></div><div class="count" id="count"></div></div><script>// 获取红、黄、绿灯以及倒计时的元素对象var lamp = {red: {obj: document.getElementById('red'),timeout: 30,style: ['red', 'gray', 'gray'],next: 'green'},yellow: {obj: document.getElementById('yellow'),timeout: 5,style: ['gray', 'yellow', 'gray'],next: 'red'},green: {obj: document.getElementById('green'),timeout: 35,style: ['gray', 'gray', 'green'],next: 'yellow'},changeStyle(style) {this.red.obj.className = style[0];this.yellow.obj.className = style[1];this.green.obj.className = style[2];}};var count = {obj: document.getElementById('count'),change: function(num) {this.obj.innerHTML = (num < 10) ? ('0' + num) : num;}};var now = lamp.green;var timeout = now.timeout;lamp.changeStyle(now.style);count.change(timeout);setInterval(function() {if(--timeout <= 0) {now = lamp[now.next];timeout = now.timeout;lamp.changeStyle(now.style);}count.change(timeout);}, 1000);</script></body></html>

杨老师课堂之JavaScript定时器案例的红绿灯设计相关推荐

  1. 杨老师课堂之JavaScript定时器限时抢购秒杀商品案例

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/kese7952/article/details/80346509 预览效果图: 使用到的知识点: 定 ...

  2. 杨老师课堂之JavaScript定时器_农夫山泉限时秒杀案例

    预览效果图: 使用到的知识点: 定时器 setInterval(函数,毫秒):在指定的毫秒数后调用函数或执行一段代码 取消定时器 clearInterval:取消由setInterval设置的定时器 ...

  3. 杨老师课堂之JavaScript悬浮事件(鼠标移入移出事件)

    今天给大家分享一个简单的JavaScript事件案例: 该事件属于悬浮事件 改代码逻辑非常简单,主要是 当鼠标移动到按钮上显示一个盒子,移开之后盒子隐藏 JavaScript事件中 onmouseov ...

  4. 杨老师课堂之网页制作HTML的学习入门-含有案例

    网页制作入门 - Html的学习 本篇所授任务 网站信息页面案例 网站图片信息页面案例 网站友情链接页面案例 网站首页案例 网站注册页面案例 网站后台页面案例 教学导航 教学目标 了解什么是标记语言 ...

  5. 台州杨老师课堂 UI设计培训班

    课程内容 一.图形界面设计基础 1.Photoshop 应用 通过各种不同风格网页整体GUI设计,掌握photoshop相关软件操作基础,熟练使用更重要是学会直接应用软件,通过项目实训直接设计. 2. ...

  6. 杨老师课堂之JavaWeb网站技术架构总结

    题记 有很多学生及一线的开发人员经常会问我到底是什么技术架构,是不是就是目前在学校的SSH.SSM技术,为了让更多的同行对架构这个词汇有更深刻的理解,我分享一下自己的个人见解.从编程开发到IT教学也有 ...

  7. 杨校老师课堂之JavaScript案例之跑马灯左右无缝连接图片自动轮播

    JavaScript案例之跑马灯左右无缝连接 效果图: 思路: 1.先做界面 1.1 制作一个大盒子,进行存放整个图片及按钮区域 1.2 制作两个按钮和中间区域盒子 1.3 中间区域盒子中使用无序列表 ...

  8. 杨老师课堂之Jquery的筛选,事件,效果,Ajax,javascript跨域)

    1 筛选[掌握]  筛选与之前"选择器"雷同,筛选提供函数 1.1 过滤 eq(index|-index),获取第N个元素 •index:一个整数,指示元素基于0的位置,这个元素 ...

  9. 杨校老师课堂之JavaScript右下角广告弹框教程

    案例制作思路: 1.先制作界面 添加一个盒子包含一个按钮,使盒子绝对定位在右上角 添加一个大盒子,同理,将盒子居于左下角:其中内部包含一个顶端盒子和底部盒子 顶端盒子因为是属于大盒子内部的存在,所以宽 ...

最新文章

  1. 浅析优化不同类型关键词都需要周期几何?
  2. 这样合并Python字典,可以让程序的运行效率提高4倍
  3. my understanding for love
  4. Jquery mobile问题总汇
  5. Linux 超全实用指令大全 | CSDN 博文精选
  6. Django 创建超级用户
  7. 如何在 Mac 上设置自定义锁屏信息?
  8. idea git提交代码步骤
  9. 免费股票数据接口api接口应该如何区分?
  10. vue项目中用Iconfont阿里巴巴矢量图标库解析失败的解决办法
  11. 中国北斗卫星导航系统
  12. sql条件查询表数据条数
  13. mysql 富文本 字段,富文本引起MYSQL出错
  14. 关于openfire支持视频聊天
  15. 520送对象什么礼物最好?精选4款好用的电容笔
  16. 秋日露营好去处,安化云台山星空露营公园
  17. 无人驾驶大巴试车_中国无人驾驶汽车高速公路试车成功
  18. scip指令集_一、设备名称:轮式机器人
  19. Python-从笛卡尔坐标插值到极坐标
  20. SpringBoot整合华为云OBS实现文件上传下载

热门文章

  1. RecyclerView实现收缩分组悬浮列表
  2. Vue基础语法-计算属性
  3. CTO:再写if-else,逮着罚款1000块!
  4. ie11弹出层后,滚动条消失,页面固定不能动
  5. app.use中间件用法
  6. 采用面向对象方法开发软件,通常需要建立三种形式的模型
  7. 给大家分享在校外也能免费用CNKI知网、万方等数据库下载相关学术论文与期刊的方法
  8. 美甲有风险 “出手”需谨慎
  9. 计算机基础教案office2010免费的,《计算机应用基础学习知识》教案office2010版.doc...
  10. PowerPC MPC8270