紅綠燈

程序不在大小勇皇,下面是自己寫(xiě)的一個(gè)模擬紅綠燈的程序
首先我們先確定功能:
1.要有顯示燈時(shí)間的地方
2.燈在剩余時(shí)間只有十秒的時(shí)候開(kāi)始閃爍
3.可以調(diào)整燈顯示的時(shí)間
4.燈按照紅-黃-綠-紅的順序切換
寫(xiě)的不好谋旦,希望朋友們可以提出寶貴意見(jiàn)。
下面是CSS代碼:

*{
    margin:0px;
    padding:0px;}
#all{
    width:300px;
    height:400px;
    border: thin solid #000000;
    position:relative;
    top:150px;
    left:400px;
    }
#left{
    width:100px;
    height:400px;
    border: thin solid #000000;
    float:left;
    }
#number{
    width:100px;
    height:100px;
    text-align:center;
    font-size:80px;
    }
#color{ 
    background-color:#000000;
    width:100px;
    height:300px;}
.lamp{
    height: 85px;
    width: 85px;
    border: thin solid #000000;
    border-radius:85px;
    padding:5px;
    background:gray;
    }
#right{
    width:195px;
    height:400px;
    border: thin solid #000000;
    float:right;
    background-image:url(text2.jpg);
    background-size:195px 400px;
    }
#control{
    margin-top:100px;
    font-family:"Times New Roman", Times, serif;
    font-size:20px;
    font-style:normal;
    text-align:center;
    font-weight: bold;
    text-decoration: blink;
    }
.time{  
    text-align:center;
    width:195px;
    height:25px;
    }
input{  
    width:180px;
    }

HTML標(biāo)簽:

<div id="all">
<div id="left">
<div id="number">
</div>
<div id="color">
<div class="lamp" id="red">
</div>
<div class="lamp" id="yellow">
</div>
<div class="lamp" id="green">
</div>
</div>
</div>
<div id="right">
<div id="control">
<p><label>紅燈時(shí)間:</label><br>
<input type="range" min="1" max="60" id="red_num">
<div id="red_num1" class="time"></div></p>

<p><label>黃燈時(shí)間:</label><br>
<input type="range" min="1" max="60" id="yellow_num">
<div id="yellow_num1" class="time"></div></p>

<p><label>綠燈時(shí)間:</label><br>
<input type="range" min="1" max="60" id="green_num">
<div id="green_num1" class="time"></div></p>

<p><button id="button" class="time">開(kāi)始</button></p>

</div>
</div>
</div>

JavaScript:

var number=document.getElementById("number");
var red=document.getElementById("red");
var yellow=document.getElementById("yellow");
var green=document.getElementById("green");
var red_num=document.getElementById("red_num");
var yellow_num=document.getElementById("yellow_num");
var green_num=document.getElementById("green_num");
var red_num1=document.getElementById("red_num1");
var yellow_num1=document.getElementById("yellow_num1");
var green_num1=document.getElementById("green_num1");
var button=document.getElementById("button");
var record,shijian,tiaodong,count;
//record:用于燈的轉(zhuǎn)換龙屉;shijian:被賦予燈亮的時(shí)間泳桦;tiaodong,count:被賦予setTimeout()函數(shù)澈侠,控制對(duì)應(yīng)活動(dòng)的開(kāi)始結(jié)束:

number.innerHTML=red_num.value;
red_num1.innerHTML=red_num.value;
yellow_num1.innerHTML=yellow_num.value;
green_num1.innerHTML=green_num.value;

red_num.onchange=function(){    
     if(!count){
   number.innerHTML=red_num.value;}
   //如果當(dāng)前紅燈正在“亮”則桥言,不影響本次紅燈顯示的時(shí)間
  red_num1.innerHTML=red_num.value;
          }

yellow_num.onchange=function(){ 
    yellow_num1.innerHTML=yellow_num.value;}

green_num.onchange=function(){  
    green_num1.innerHTML=green_num.value;}
    
function toRed(){
    clearTimeout(tiaodong);
    shijian = red_num.value;
    number.innerHTML=shijian;
    record=1;
    number.style.color="red";
    green.style.backgroundColor="gray";
    red.style.backgroundColor="red";
}

function toYellow(){
    clearTimeout(tiaodong);
    shijian = yellow_num.value;
    number.innerHTML=shijian;
    record=2;
    number.style.color="yellow";
    red.style.backgroundColor="gray";
    yellow.style.backgroundColor="yellow";}

function toGreen(){
    clearTimeout(tiaodong);
    shijian = green_num.value;
    number.innerHTML = shijian;
    record=3;
    number.style.color="green";
    green.style.backgroundColor="green";
    yellow.style.backgroundColor="gray";
   }

function start(){     
    if(shijian>10){
    count=setTimeout(start,1000);
    number.innerHTML = shijian ;
    shijian = shijian-1;}
    
    else{   
    count=setTimeout(start,1000);
    number.innerHTML = shijian ;
    shijian = shijian-1;
    tiaodong=setTimeout(function(){number.innerHTML=""},500);
     }
     
    if(number.innerHTML<=0){  
     switch(record){         
     case 1:toYellow();break; 
     case 2:toGreen();break;
     case 3:toRed();break;   
                     }
                   }
                 }
                 
button.onclick=function(){  
    shijian = red_num.value;
    number.innerHTML=shijian;
    number.style.color="red";
    red.style.backgroundColor="red";
    yellow.style.backgroundColor="gray";
    green.style.backgroundColor="gray";
    if(count)
    clearTimeout(count);
    record=1;
    start();
    }

看程序我覺(jué)得只要能理解,其中的邏輯過(guò)程谋国,就可以了槽地,如果朋友你看了之后有不能理解的地方,請(qǐng)聯(lián)系我芦瘾,我寫(xiě)的也不是最好的捌蚊,有更好的想法我們可以一起交流!


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末近弟,一起剝皮案震驚了整個(gè)濱河市缅糟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌祷愉,老刑警劉巖窗宦,帶你破解...
    沈念sama閱讀 219,270評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異二鳄,居然都是意外死亡赴涵,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)订讼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)髓窜,“玉大人,你說(shuō)我怎么就攤上這事欺殿〖淖荩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,630評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵祈餐,是天一觀的道長(zhǎng)擂啥。 經(jīng)常有香客問(wèn)我哄陶,道長(zhǎng)帆阳,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,906評(píng)論 1 295
  • 正文 為了忘掉前任屋吨,我火速辦了婚禮蜒谤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘至扰。我一直安慰自己鳍徽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布敢课。 她就那樣靜靜地躺著阶祭,像睡著了一般绷杜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上濒募,一...
    開(kāi)封第一講書(shū)人閱讀 51,718評(píng)論 1 305
  • 那天鞭盟,我揣著相機(jī)與錄音,去河邊找鬼瑰剃。 笑死齿诉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的晌姚。 我是一名探鬼主播粤剧,決...
    沈念sama閱讀 40,442評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼挥唠!你這毒婦竟也來(lái)了抵恋?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,345評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤猛遍,失蹤者是張志新(化名)和其女友劉穎馋记,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體懊烤,經(jīng)...
    沈念sama閱讀 45,802評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡梯醒,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了腌紧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片茸习。...
    茶點(diǎn)故事閱讀 40,117評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖壁肋,靈堂內(nèi)的尸體忽然破棺而出号胚,到底是詐尸還是另有隱情,我是刑警寧澤浸遗,帶...
    沈念sama閱讀 35,810評(píng)論 5 346
  • 正文 年R本政府宣布猫胁,位于F島的核電站,受9級(jí)特大地震影響跛锌,放射性物質(zhì)發(fā)生泄漏弃秆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評(píng)論 3 331
  • 文/蒙蒙 一髓帽、第九天 我趴在偏房一處隱蔽的房頂上張望菠赚。 院中可真熱鬧,春花似錦郑藏、人聲如沸衡查。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,011評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)拌牲。三九已至俱饿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間塌忽,已是汗流浹背稍途。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,139評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留砚婆,地道東北人械拍。 一個(gè)月前我還...
    沈念sama閱讀 48,377評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像装盯,于是被迫代替她去往敵國(guó)和親坷虑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 本文參與#漫步青春#征文活動(dòng)埂奈,作者:張振宇迄损,本人承諾,文章內(nèi)容為原創(chuàng)账磺,且未在其他平臺(tái)發(fā)布芹敌。 ...
    4d1b9d99889c閱讀 170評(píng)論 0 0
  • 前言 原本不是路,走的人多了也就變成了路垮抗。 原本該守的規(guī)矩氏捞,守得人少了也就變的可有可無(wú)。 如果我們不是多數(shù)人冒版,那么...
    時(shí)下青年閱讀 524評(píng)論 0 1
  • 今天開(kāi)車(chē)送小孩子去上學(xué)的路上辞嗡,小家伙指著紅綠燈問(wèn)我這是啥捆等?我就給她講了下。 汽車(chē)相對(duì)來(lái)說(shuō)看到紅燈都會(huì)停的续室,上海這邊...
    海歸程序猿奶爸閱讀 1,915評(píng)論 0 1
  • 從小生活在鎮(zhèn)上栋烤,紅綠燈在小時(shí)候唯一的印象就是那句口訣——紅燈停綠燈行,黃燈等一等挺狰。這就像一直不知道共產(chǎn)主義的我明郭,從...
    關(guān)山樓不二閱讀 263評(píng)論 0 1
  • 既然那般苦 那就不相見(jiàn) 相見(jiàn)又恨晚 那就不要戀 可奈何 初見(jiàn)你時(shí) 還是少年的模樣 鮮衣怒馬 唇紅齒白 卻難敵過(guò) 陌...
    木羅淚閱讀 284評(píng)論 0 1