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

原生js實(shí)現(xiàn)抽獎(jiǎng)小游戲

 更新時(shí)間:2019年06月27日 16:58:05   作者:''''馬賽克''''  
這篇文章主要為大家詳細(xì)介紹了原生js實(shí)現(xiàn)抽獎(jiǎng)小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

這個(gè)小游戲可以設(shè)置為抽獎(jiǎng)小游戲,也可以設(shè)置為隨機(jī)點(diǎn)名器,這個(gè)軟件實(shí)現(xiàn)可以多次獲取同一個(gè)元素的

1、HTML結(jié)構(gòu)代碼如下:

<div class="wrapper">
 <ul class="box"></ul>
 <button class="start">開始點(diǎn)名</button>
 <button class="stop">停止</button>
 <div class="choose">
  <span class="niu">幸運(yùn)的的你</span>
  <img src="~/Content/img1/1.gif" />   
  <span class="name"></span>
 </div>
</div>

2、css樣式設(shè)置頁面代碼如下:

css代碼不僅僅是修飾頁面的美觀度,還可以設(shè)置動(dòng)畫,使得更生動(dòng)

.wrapper {
  width: 99%;margin: 8px auto;
  border: 1px solid #ddd;text-align: center;
 }
 .box li {
  vertical-align: top;
  display: inline-block;
  width: 100px;height: 50px;
  border: 2px solid #ddd;
  border-radius: 15px;text-align: center;
  line-height: 50px; margin: 5px;
 }
 .box li.change {
  background-color: red;
  color: #fff;font-weight: bolder;
 }
 .wrapper button {
  display: inline-block;
 }
 .wrapper button {
  border: none;width: 100px;
  height: 50px;border-radius: 10px;
  cursor: pointer;outline: none;
  margin-top: 20px;font-weight: bolder;
  color: #333;background-color: #eee;
 }
 .wrapper .choose {
  position: relative;
  width: 200px;height: 180px;
  border-radius:10px;margin:12px auto;
  border: 1px solid #000;
 }
 .wrapper .choose img {
  position: absolute;bottom: 0;left: 0;
 }
 .niu{
  font-size:24px; margin:0px 0px;
 }
 .name{
  position:absolute;
  font-size:29px;top:43px;left:71px;
 }

3、原生js取出元素

var boxUl = document.getElementsByClassName('box')[0];
var start = document.getElementsByClassName('start')[0];//獲取點(diǎn)擊開始按鈕元素
var stop = document.getElementsByClassName('stop')[0]//獲取點(diǎn)擊停止按鈕元素
var oLi = document.getElementsByTagName('li');//獲取js插入的li標(biāo)簽元素
// 將插入名字存入數(shù)組
var arr = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20"]
// html進(jìn)行 字符串拼接
var str = '';
// 通過for循環(huán)進(jìn)行拼接
for (var i = 0; i < arr.length; i++) {
 // 利用字符串拼接
 str += "<li>" + arr[i] + "</li>";
}
// 將拼接后的html字符串插入到dom結(jié)構(gòu)中
boxUl.innerHTML = str;
// 聲明timer
var timer = null;

4、開始按鈕的原生js代碼如下:

// 點(diǎn)擊開始進(jìn)行選擇
start.onclick = function () {
 // 每次運(yùn)行前清除timer
 clearInterval(timer);
 // 設(shè)置定時(shí)器
 timer = setInterval(function () {
  // 根據(jù)數(shù)組長度范圍生成隨機(jī)數(shù)
  var i = Math.floor(Math.random() * arr.length);
  // 先通過for循環(huán)清空所有class名
  for (var j = 0; j < oLi.length; j++) {
   oLi[j].className = "";
  }
  // 為隨機(jī)選擇的li設(shè)置選中的class名
  oLi[i].className = "change";
 }, 1);
};

5、停止按鈕原生js代碼如下:

// 點(diǎn)擊停止
stop.onclick = function () {
 // 清空定時(shí)器
 clearInterval(timer);
 // 找到選中的元素
 var choise = document.getElementsByClassName('change')[0];
 // 找到選中元素的內(nèi)容
 var name = choise.innerText;
 // 同時(shí)為選中位置添加內(nèi)容
 var nameSpan = document.getElementsByClassName('name')[0];
 nameSpan.innerText = name+"號";
}

6、效果圖

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

相關(guān)文章

  • JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表

    JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表

    這篇文章主要介紹了JavaScript中數(shù)據(jù)結(jié)構(gòu)與算法(三):鏈表,本文分別講解了單鏈表與雙鏈表以及增加節(jié)和刪除節(jié)的代碼實(shí)例,需要的朋友可以參考下
    2015-06-06
  • js禁止Backspace鍵使瀏覽器后退的實(shí)現(xiàn)方法

    js禁止Backspace鍵使瀏覽器后退的實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猨s禁止Backspace鍵使瀏覽器后退的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • JS簡單去除數(shù)組中重復(fù)項(xiàng)的方法

    JS簡單去除數(shù)組中重復(fù)項(xiàng)的方法

    這篇文章主要介紹了JS簡單去除數(shù)組中重復(fù)項(xiàng)的方法,涉及javascript針對數(shù)組的遍歷、判斷與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下
    2016-09-09
  • JavaScript解析URL參數(shù)示例代碼

    JavaScript解析URL參數(shù)示例代碼

    通過js解析URL參數(shù),本文創(chuàng)建了一個(gè)js類,并引用Request.QueryString,感興趣的朋友可以參考下,希望對大家有所幫助
    2013-08-08
  • uniapp使用H5調(diào)試時(shí)跨域問題解決

    uniapp使用H5調(diào)試時(shí)跨域問題解決

    本文主要介紹了uniapp使用H5調(diào)試時(shí)跨域問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • bootstrap table實(shí)現(xiàn)合并單元格效果

    bootstrap table實(shí)現(xiàn)合并單元格效果

    這篇文章主要為大家詳細(xì)介紹了bootstrap table實(shí)現(xiàn)合并單元格效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • ESLint的簡單使用方法(js,ts,vue)

    ESLint的簡單使用方法(js,ts,vue)

    ESLint是一個(gè)用于統(tǒng)一團(tuán)隊(duì)編碼規(guī)范、減少代碼錯(cuò)誤的工具,它可以手動(dòng)安裝并配置,支持JavaScript、TypeScript和Vue.js等語言,文章詳細(xì)介紹了如何手動(dòng)下載和配置ESLint,需要的朋友可以參考下
    2025-01-01
  • JS異常處理的一個(gè)想法(sofish)

    JS異常處理的一個(gè)想法(sofish)

    由于網(wǎng)絡(luò)、瀏覽器問題、緩存等原因執(zhí)行js的時(shí)候會(huì)拋出異常接下來分享一個(gè)想法,基本上涉及到兩步:收集和使用,感興趣的你可以參考下哈,希望對你有所幫助
    2013-03-03
  • js之如何篩選出兩個(gè)數(shù)組相同的值

    js之如何篩選出兩個(gè)數(shù)組相同的值

    這篇文章主要介紹了js之如何篩選出兩個(gè)數(shù)組相同的值問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • zTree插件之多選下拉菜單實(shí)例代碼

    zTree插件之多選下拉菜單實(shí)例代碼

    zTree插件之多選下拉菜單實(shí)例代碼。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11

最新評論

社会| 常德市| 镇沅| 太原市| 兴和县| 栾川县| 新晃| 鄱阳县| 寿光市| 客服| 古丈县| 紫金县| 南川市| 延寿县| 海阳市| 雷州市| 中卫市| 冀州市| 凤山市| 安平县| 太原市| 石阡县| 绥德县| 甘德县| 汉沽区| 重庆市| 个旧市| 蒙山县| 昌图县| 武定县| 普安县| 武安市| 从化市| 凤阳县| 尉犁县| 余姚市| 盐池县| 余庆县| 鞍山市| 枞阳县| 大田县|