最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js+html實(shí)現(xiàn)點(diǎn)名系統(tǒng)功能

 更新時(shí)間:2019年11月05日 16:41:29   作者:sanmu_1  
這篇文章主要為大家詳細(xì)介紹了js+html實(shí)現(xiàn)點(diǎn)名系統(tǒng)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了js+html實(shí)現(xiàn)點(diǎn)名系統(tǒng)功能的具體代碼,供大家參考,具體內(nèi)容如下

前言:實(shí)現(xiàn)一個(gè)簡(jiǎn)單的點(diǎn)名系統(tǒng)

需求分析:

1、兩個(gè)按鈕實(shí)現(xiàn)隨機(jī)點(diǎn)名的開始和結(jié)束(onclick()方法)
2、每一個(gè)名字需要放在一個(gè)單獨(dú)的盒子中并被一個(gè)div所包裹,以便于統(tǒng)一格式(動(dòng)態(tài)生成div)
3、當(dāng)隨機(jī)開始時(shí),隨機(jī)選取一條數(shù)據(jù),并將該條數(shù)據(jù)所在的div背景顏色更改(random()函數(shù)獲得隨機(jī)數(shù),setTimeout()重復(fù)調(diào)用)
4、隨機(jī)結(jié)束時(shí)將當(dāng)前的數(shù)據(jù)顯示出來(alert())

下面開始實(shí)現(xiàn)

1.準(zhǔn)備數(shù)據(jù)并編寫HTML頁面

將所有的數(shù)據(jù)放在一個(gè)數(shù)組中,便于后面根據(jù)角標(biāo)隨機(jī)選取數(shù)據(jù)

<button οnclick="startF2()">開始</button>
<button οnclick="endF2()">結(jié)束</button>
<div id="fa">
 
</div>
//JS中準(zhǔn)備數(shù)據(jù)
//準(zhǔn)備數(shù)據(jù)
var arr = ["1", "2", "3", "4", "5", "6"];
var index = -1; //標(biāo)記被選中的塊的id,下一次循環(huán)時(shí)將該塊的背景改為原來的顏色
var time;

2.在頁面加載時(shí)動(dòng)態(tài)得將數(shù)據(jù)放在div中展示出來

需要用到onload()方法在頁面加載時(shí)同時(shí)調(diào)用初始化數(shù)據(jù)的方法

function init() {
 //將數(shù)組顯示在頁面上
 for(var i = 0; i < arr.length; i++) {
 //獲取父容器
 var fa = document.getElementById("fa");
 //創(chuàng)建小div
 var div = document.createElement("div");
 //設(shè)置id屬性,方便尋找
 div.id = "id" + i;
 div.className = "box"; //方便給小div設(shè)置樣式
 //設(shè)置小div中顯示的內(nèi)容
 div.innerHTML = arr[i];
 //將小div放在父容器中
 fa.appendChild(div);
 }
 
}

此時(shí)頁面上應(yīng)該可以將數(shù)據(jù)全部顯示出來

3.編寫點(diǎn)擊按鈕時(shí)觸發(fā)的開始隨機(jī)和結(jié)束隨機(jī)的方法

開始隨機(jī)方法

function nowfind() { 
 if(index != -1) {
 //將上一個(gè)選中的div的背景還原
 document.getElementById("id" + index).style.backgroundColor = "gray";
 }
 //隨機(jī)數(shù)
 var num = Math.floor(Math.random() * arr.length);
 index = num; //記錄被選中的div的id
 //獲取對(duì)應(yīng)的div
 var div = document.getElementById("id" + num);
 //設(shè)置背景顏色
 div.style.backgroundColor = "pink";
}
 
function startF2() {
 //調(diào)用計(jì)時(shí)器重復(fù)調(diào)用nowfind方法
 time = setInterval("nowfind()",100);//賦值給變量以便于關(guān)閉調(diào)用
}

nowfind()方法是實(shí)現(xiàn)一次隨機(jī)獲取,startF2()方法是利用setInterval()方法周期性得調(diào)用nowfind()方法

nowfind()中進(jìn)行下一次循環(huán)的時(shí)候必須要將上一次選取的數(shù)據(jù)所在的div背景改變回來,否則最終會(huì)變成同一色.并且隨機(jī)數(shù)的選取應(yīng)該采用floor()方法向下取整

結(jié)束隨機(jī)方法

function endF2() {
 //停止隨機(jī)獲取姓名
 clearInterval(time);
 alert("請(qǐng)"+arr[index]+"同學(xué)回答問題");
}

結(jié)束時(shí)將數(shù)據(jù)輸出即可

點(diǎn)名系統(tǒng)實(shí)現(xiàn).

效果如下:

隨機(jī)前:

隨機(jī)中:

隨機(jī)結(jié)束:

完整代碼如下:

<!DOCTYPE html>
<html>
 
 <head>
 <meta charset="UTF-8">
 <title></title>
 <script type="text/javascript">
  //準(zhǔn)備數(shù)據(jù)
  var arr = ["1", "2", "3", "4", "5", "6"];
  var index = -1; //標(biāo)記被選中的塊的id,下一次循環(huán)時(shí)將該塊的背景改為原來的顏色
  var time;
  function nowfind() {
 
  if(index != -1) {
   //將上一個(gè)選中的div的背景還原
   document.getElementById("id" + index).style.backgroundColor = "gray";
  }
  //隨機(jī)數(shù)
  var num = Math.floor(Math.random() * arr.length);
  index = num; //記錄被選中的div的id
  //獲取對(duì)應(yīng)的div
  var div = document.getElementById("id" + num);
  //設(shè)置背景顏色
  div.style.backgroundColor = "pink";
  }
 
  function startF2() {
  //調(diào)用計(jì)時(shí)器重復(fù)調(diào)用nowfind方法
  time = setInterval("nowfind()",100);//賦值給變量以便于關(guān)閉調(diào)用
  }
 
  function endF2() {
  //停止隨機(jī)獲取姓名
  clearInterval(time);
  alert("請(qǐng)"+arr[index]+"同學(xué)回答問題");
  }
 
  function init() {
  //將數(shù)組顯示在頁面上
  for(var i = 0; i < arr.length; i++) {
   //獲取父容器
   var fa = document.getElementById("fa");
   //創(chuàng)建小div
   var div = document.createElement("div");
   //設(shè)置id屬性,方便尋找
   div.id = "id" + i;
   div.className = "box"; //方便給小div設(shè)置樣式
   //設(shè)置小div中顯示的內(nèi)容
   div.innerHTML = arr[i];
   //將小div放在父容器中
   fa.appendChild(div);
  }
 
  }
 </script>
 <style type="text/css">
  .box {
  width: 100px;
  height: 50px;
  background-color: gray;
  text-align: center;
  line-height: 50px;
  margin: 10px;
  float: left;
  }
 </style>
 </head>
 
 <body οnlοad="init()">
 <button οnclick="startF2()">開始</button>
 <button οnclick="endF2()">結(jié)束</button>
 <div id="fa">
 
 </div>
 </body>
 
</html>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS中獲取數(shù)據(jù)庫中的值的方法

    JS中獲取數(shù)據(jù)庫中的值的方法

    在項(xiàng)目中遇到一個(gè)問題,需要在JS中讀取數(shù)據(jù)庫中的值,然后再把值返回到頁面中,解決方案如下:使用Ajax方法來實(shí)現(xiàn),需要用到ajax.dll(一個(gè)ajax技術(shù)開發(fā)的幫助類庫)。
    2013-07-07
  • 微信小程序網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求服務(wù)實(shí)現(xiàn)詳解

    微信小程序網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求服務(wù)實(shí)現(xiàn)詳解

    這篇文章主要介紹了微信小程序網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求服務(wù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-10-10
  • JavaScript的Number對(duì)象的toString()方法

    JavaScript的Number對(duì)象的toString()方法

    toString()方法可以把Number對(duì)象轉(zhuǎn)換成字符串,并返回此字符串,本文給大家介紹JavaScript的Number對(duì)象的toString()方法,對(duì)javascript對(duì)象方法相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • JS模擬簡(jiǎn)易滾動(dòng)條效果代碼(附demo源碼)

    JS模擬簡(jiǎn)易滾動(dòng)條效果代碼(附demo源碼)

    這篇文章主要介紹了JS模擬簡(jiǎn)易滾動(dòng)條效果代碼,可模擬出滾動(dòng)條拖動(dòng)顯示的效果,涉及JavaScript鼠標(biāo)事件的響應(yīng)及頁面元素運(yùn)算的相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下
    2016-04-04
  • 基于JavaScript實(shí)現(xiàn)驗(yàn)證碼功能

    基于JavaScript實(shí)現(xiàn)驗(yàn)證碼功能

    這篇文章主要介紹了基于JavaScript實(shí)現(xiàn)驗(yàn)證碼功能的相關(guān)資料
    2017-04-04
  • 禁用頁面部分JavaScript不是全部而是部分

    禁用頁面部分JavaScript不是全部而是部分

    全部限制那是很簡(jiǎn)單的事,直接把<script>腳本塊過濾掉就行了,但是部分限制又是如何做到的呢,下面我們一起來看看
    2014-09-09
  • JS實(shí)現(xiàn)先顯示大圖后自動(dòng)收起顯示小圖的廣告代碼

    JS實(shí)現(xiàn)先顯示大圖后自動(dòng)收起顯示小圖的廣告代碼

    這篇文章主要介紹了JS實(shí)現(xiàn)先顯示大圖后自動(dòng)收起顯示小圖的廣告代碼,涉及javascript頁面元素屬性的操作及數(shù)學(xué)運(yùn)算技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-09-09
  • JavaScript實(shí)現(xiàn)打地鼠游戲

    JavaScript實(shí)現(xiàn)打地鼠游戲

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)打地鼠游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • JavaScript 解析數(shù)學(xué)表達(dá)式的過程詳解

    JavaScript 解析數(shù)學(xué)表達(dá)式的過程詳解

    這篇文章主要介紹了JavaScript 解析數(shù)學(xué)表達(dá)式的過程詳解,本文以一個(gè)的解題思路,來分享如何解決問題,解決的過程,可以作為解決工作中一般問題的通用思路,對(duì)js解析表達(dá)式相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-06-06
  • webpack使用及如何搭建cesium三維地球環(huán)境

    webpack使用及如何搭建cesium三維地球環(huán)境

    這篇文章主要介紹了webpack快速上手之搭建cesium三維地球環(huán)境,本文使用的是webpack5,webpack5 升級(jí)后默認(rèn)是不支持polyfill的,編譯時(shí)會(huì)報(bào)錯(cuò),本文主要介紹了Cesium以及Webpack的使用,如何將Cesium一步步地集成到Webpack中,需要的朋友可以參考下
    2023-11-11

最新評(píng)論

无极县| 隆回县| 都匀市| 峨眉山市| 靖江市| 延川县| 灌云县| 通城县| 呈贡县| 玛沁县| 象山县| 绍兴市| 绥江县| 赫章县| 汨罗市| 衡山县| 兴和县| 观塘区| 肥乡县| 孟连| 忻城县| 河南省| 新巴尔虎右旗| 吴川市| 泾阳县| 赣榆县| 吐鲁番市| 五大连池市| 卢龙县| 团风县| 渝北区| 吉林省| 阿荣旗| 东莞市| 江城| 丰都县| 客服| 颍上县| 轮台县| 荣成市| 诸暨市|