利用js實(shí)現(xiàn)簡(jiǎn)易紅綠燈
HTML代碼:
在一個(gè)div容器內(nèi),設(shè)置3個(gè)span
<body> <div id="i1"> <span class="light red_light"></span> <span class="light yellow_light"></span> <span class="light green_light"></span> </div>
CSS代碼:
<style>
.red_light {
width: 200px;
height: 200px;
border-radius: 50%;
margin-left: 10px;
display: inline-block;
background-color: red;
}
.yellow_light {
width: 200px;
height: 200px;
border-radius: 50%;
margin-left: 10px;
display: inline-block;
background-color: yellow;
}
.green_light {
width: 200px;
height: 200px;
border-radius: 50%;
margin-left: 10px;
display: inline-block;
background-color: green;
}
.light {
width: 200px;
height: 200px;
background-color: #777777;
border-radius: 50%;
margin-left: 10px;
display: inline-block;
}
#i1 {
width: 660px;
height: 200px;
margin: 0 auto;
border: black 10px solid;
}
</style>
JS代碼
<script>
function l() {
r_l()//紅燈亮
setTimeout(y_l, 1000);//黃燈一秒后亮
setTimeout(r_l, 1000);//黃燈亮的同時(shí)關(guān)閉紅燈
setTimeout(g_l, 2000);//綠燈兩秒后亮
setTimeout(y_l, 2000);//綠燈亮,黃燈熄
setTimeout(g_l, 3000);//三秒后,紅燈熄
}
function r_l() {
//獲取紅燈
let r = document.getElementsByClassName('red_light')[0];
//toggle函數(shù),如果有該屬性,則去除,沒(méi)有該屬性,則添加
r.classList.toggle('light')
}
function g_l() {
//同上
let r = document.getElementsByClassName('green_light')[0];
r.classList.toggle('light')
}
function y_l() {
//同上
let r = document.getElementsByClassName('yellow_light')[0];
r.classList.toggle('light')
}
//紅燈10秒,黃燈2秒,綠燈10秒
l(); //先執(zhí)行函數(shù)
window.onload = function () {
t1 = setInterval(l, 3000)//每隔三秒重復(fù)執(zhí)行函數(shù)
};
//每隔三秒的時(shí)間是因?yàn)槊總€(gè)燈各閃一秒,如果改變了燈的持續(xù)時(shí)間,循環(huán)時(shí)間也要修改
</script>
運(yùn)行效果

以上就是利用js實(shí)現(xiàn)簡(jiǎn)易紅綠燈的詳細(xì)內(nèi)容,更多關(guān)于js 實(shí)現(xiàn)紅綠燈的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- D3.js實(shí)現(xiàn)簡(jiǎn)潔實(shí)用的動(dòng)態(tài)儀表盤的示例
- js canvas實(shí)現(xiàn)適用于移動(dòng)端的百分比儀表盤dashboard
- js canvas仿支付寶芝麻信用分儀表盤
- 關(guān)于Node.js中頻繁修改代碼重啟服務(wù)器的問(wèn)題
- JS如何操作DOM基于表格動(dòng)態(tài)展示數(shù)據(jù)
- js實(shí)現(xiàn)點(diǎn)擊煙花特效
- js輪播圖之旋轉(zhuǎn)木馬效果
- JavaScript通如何過(guò)RGraph實(shí)現(xiàn)動(dòng)態(tài)儀表盤
相關(guān)文章
js實(shí)現(xiàn)簡(jiǎn)單的點(diǎn)名器隨機(jī)色實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于js實(shí)現(xiàn)簡(jiǎn)單的點(diǎn)名器隨機(jī)色的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
淺談webpack性能榨汁機(jī)(打包速度優(yōu)化)
這篇文章主要介紹了淺談webpack性能榨汁機(jī)(打包速度優(yōu)化),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
百度Popup.js彈出框進(jìn)化版 拖拽小框架發(fā)布 兼容IE6/7/8,Firefox,Chrome
百度空間的彈出窗口和拖拽效果(也就是popup.js),代碼精簡(jiǎn),效果也很好,我們可以在很多大型網(wǎng)站上見(jiàn)到這種效果,在我的項(xiàng)目中也使用了該js。2010-04-04
ECharts異步加載數(shù)據(jù)與數(shù)據(jù)集(dataset)
這篇文章介紹了ECharts異步加載數(shù)據(jù)與數(shù)據(jù)集(dataset),文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
js動(dòng)態(tài)獲取子復(fù)選項(xiàng)并設(shè)計(jì)全選及提交的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇js動(dòng)態(tài)獲取子復(fù)選項(xiàng)并設(shè)計(jì)全選及提交的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的, 現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06
JavaScript實(shí)現(xiàn)的使用鍵盤控制人物走動(dòng)實(shí)例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的使用鍵盤控制人物走動(dòng)實(shí)例,也可說(shuō)是一個(gè)JS實(shí)現(xiàn)的小人走動(dòng)小游戲,需要的朋友可以參考下2014-08-08
js/jquery控制頁(yè)面動(dòng)態(tài)加載數(shù)據(jù) 滑動(dòng)滾動(dòng)條自動(dòng)加載事件的方法
下面小編就為大家?guī)?lái)一篇js/jquery控制頁(yè)面動(dòng)態(tài)加載數(shù)據(jù) 滑動(dòng)滾動(dòng)條自動(dòng)加載事件的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02

