整合營(yíng)銷(xiāo)服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          手把手教你原生js實(shí)現(xiàn)‘雷霆戰(zhàn)機(jī)’

          關(guān)注,不迷路,歡迎點(diǎn)關(guān)注

          代碼運(yùn)行效果

          整個(gè)代碼的主要難度是理解,js操作dom的代碼,如何靈活的添加元素,刪除元素,樣式的改變,添加class,等等,以及一些邏輯,另外則是理解定時(shí)器與計(jì)時(shí)器的創(chuàng)造與刪除,鼠標(biāo)事件函數(shù),以及在子彈和敵機(jī)相遇時(shí)改變樣式為爆炸,總體不難,創(chuàng)造的計(jì)時(shí)器必須在網(wǎng)頁(yè)取消前刪除掉。本文的css樣式較多,就選擇兩個(gè)分開(kāi)寫(xiě)的,本文中的飛機(jī)和爆炸的圖片可以在百度搜索阿里巴巴矢量圖標(biāo)庫(kù)下載,對(duì)于js還需多練。以下代碼粘貼到編譯器內(nèi),運(yùn)行即可。

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <meta name="viewport" content="width=device-width, initial-scale=1.0">
           <meta http-equiv="X-UA-Compatible" content="ie=edge">
           <title>Document</title>
           <link rel="stylesheet" type="text/css" href="flycss/style.css">
          </head>
          <body>
           <div class="wrap" id='wrapId'>
           <!-- 飛機(jī) -->
           <div class="airplaneDiv" id="airplaneId"></div>
           </div>
           <script>
           var doc = document;
           function gId(n) {
           return doc.getElementById(n)
           }
           gId('wrapId').onmousemove = function(e) {
           var eL = e.pageX - gId('wrapId').offsetLeft - 20;
           var eT = e.pageY - gId('wrapId').offsetTop - 30;
           gId('airplaneId').style.left = eL + 'px';
           gId('airplaneId').style.top = eT + 'px';
           }
           // 生成子彈
           function creatFire(e) {
           var _fire = doc.createElement('div');
           _fire.style.left = e.pageX - gId('wrapId').offsetLeft + 'px';
           _fire.style.top = e.pageY - 80 + 'px';
           _fire.setAttribute('class', 'bulletDiv');
           gId('wrapId').appendChild(_fire);
           // 選出x軸線上所有的目標(biāo),然后進(jìn)行坐標(biāo)的比對(duì)
           var _fireTarget_X = [];
           var _lis1 = gId('wrapId').querySelectorAll('li')
           for (var c = 0; c < _lis1.length; c++) {
           if ((_fire.offsetLeft > _lis1[c].offsetLeft) &&
           (_fire.offsetLeft < (_lis1[c].offsetLeft + 30))) {
           _fireTarget_X.push(_lis1[c]);
           }
           }
           var n = _fire.offsetTop;
           var _s = setInterval(
           function() {
           _fire.style.top = n-- + 'px';
           if (_fireTarget_X.length >= 0) {
           for (var d = 0; d < _fireTarget_X.length; d++) {
           if ((n == _fireTarget_X[d].offsetTop) &&
           (_fireTarget_X[d].getAttribute('class') != 'targetDiv yes_boom')) {
           _fireTarget_X[d].setAttribute('class', 'targetDiv yes_boom')
           var _e = setTimeout(function() {
           gId('wrapId').removeChild(_fire);
           clearInterval(_s)
           clearTimeout(_e);
           }, 200)
           }
           }
           }
           if (n <= 0) {
           gId('wrapId').removeChild(_fire);
           clearInterval(_s);
           }
           }, 10)
           }
           // 生成敵軍 列表數(shù)據(jù)
           function targetListObj() {
           var _arrs = [];
           for (var i = 0; i < 10; i++) {
           var _obj = {};
           _obj._x = Math.floor(Math.random() * 10);
           _obj._y = Math.floor(Math.random() * 10);
           _arrs.push(_obj)
           }
           creatTarget(_arrs);
           }
           // 這個(gè)方法相當(dāng)于開(kāi)始游戲的按鈕
           targetListObj()
           // 生成各個(gè)子彈
           function creatTarget(_arrs) {
           for (var i = 0; i < _arrs.length; i++) {
           var _target = doc.createElement('li');
           _target.setAttribute('class', 'targetDiv no_boom');
           _target.style.left = _arrs[i]._x * 100 + 'px';
           gId('wrapId').appendChild(_target);
           }
           var _lis = gId('wrapId').querySelectorAll('li');
           var n = 0;
           var _t = setInterval(
           function() {
           for (var j = 0; j < _lis.length; j++) {
           _lis[j].style.top = (_arrs[j]._y++) * 5 + 'px';
           n++;
           if (n > 900) {
           clearInterval(_t)
           gId('wrapId').removeChild(_lis[j]);
           }
           }
           }, 100);
           }
           // 射擊子彈
           gId('wrapId').onclick = function(e) {
           creatFire(e);
           }
           </script>
          </body>
          </html>
          

          css樣式

          科技訊】6月4日消息,今天給大家?guī)?lái)雙系統(tǒng)的雷霆戰(zhàn)機(jī)破解版,可以隨意刷寶箱刷裝備。并且這個(gè)版本非常精簡(jiǎn),喜歡的同學(xué)不要等啦。 雷霆戰(zhàn)機(jī)最新破解版發(fā)布,本次破解版為最新精簡(jiǎn)版可隨意刷寶箱刷裝備,使用蘋(píng)果公司最新發(fā)布的Swift語(yǔ)言編寫(xiě),加入防封代碼無(wú)盡100萬(wàn)無(wú)異常,有興趣的朋友可以下載試試。

          安卓最新破解版 ios最新普通版

          是否需要root權(quán)限:需要

          是否需要越獄:需要

          下載地址:【點(diǎn)我下載】

          下載地址:【點(diǎn)我下載】

          分源碼

          錄制的一個(gè)演示視頻,大家可以看一看

          <script src="https://lf3-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>

          html5結(jié)合JavaScript寫(xiě)的太空襲擊戰(zhàn)手機(jī)飛機(jī)大戰(zhàn)游戲,消滅敵機(jī)獲得勝利。默認(rèn)設(shè)置飛機(jī)等級(jí)、選擇關(guān)卡、鼠標(biāo)拉動(dòng)戰(zhàn)斗機(jī),進(jìn)行移動(dòng)。


          主站蜘蛛池模板: 国产suv精品一区二区6| 国模大胆一区二区三区| 日本精品一区二区三区视频| 久久久久久人妻一区二区三区| 成人区人妻精品一区二区不卡视频| 成人中文字幕一区二区三区| 国产成人高清视频一区二区| 日韩一区二区三区电影在线观看| 色欲综合一区二区三区| 国产一区玩具在线观看| 亚洲国产综合精品一区在线播放| 精品无码人妻一区二区三区18| 熟女精品视频一区二区三区| 夜夜添无码一区二区三区| 无码少妇一区二区浪潮av| 在线一区二区观看| 天天视频一区二区三区 | 国产成人一区二区三区在线| 国产伦精品一区二区三区四区 | 伊人久久精品无码av一区| 精品国产区一区二区三区在线观看 | 亚洲AV无码一区二区三区牲色| 亚洲日本一区二区三区| 久久福利一区二区| 色窝窝无码一区二区三区成人网站 | 国产韩国精品一区二区三区久久| 久久久国产精品亚洲一区 | 天美传媒一区二区三区| 精品免费国产一区二区| 精品女同一区二区| 亚洲日韩国产一区二区三区| 成人精品视频一区二区三区 | 无码人妻久久久一区二区三区| 国产另类TS人妖一区二区| 久久久久久人妻一区精品| 99精品一区二区三区无码吞精| 波多野结衣一区二区三区| 日本一区中文字幕日本一二三区视频 | 午夜天堂一区人妻| 在线精品视频一区二区| 国产日韩综合一区二区性色AV|