原生js實(shí)現(xiàn)別踩白塊小遊戲的方法,我們?cè)谇懊娴奈恼轮?,已?jīng)給大家逐步講解過(guò)了。
下面我們繼續(xù)結(jié)合上篇文章《原生JS實(shí)現(xiàn)別踩白塊小遊戲(八)》,為大家介紹別踩白塊小遊戲中移動(dòng)效果的具體實(shí)作方法。
相關(guān)js程式碼如下:
//移動(dòng)效果 function move(obj) { //默認(rèn)速度與計(jì)分 var speed = 5, num = 0; obj.timer = setInterval(function () { //速度 var step = parseInt(getComputedStyle(obj, null)['top']) + speed; obj.style.top = step + 'px' if (parseInt(getComputedStyle(obj, null)['top']) >= 0) { CDiv('row'); obj.style.top = -150 + 'px'; } if (obj.children.length == 6) { for (var i = 0; i < 4; i++) { if (obj.children[obj.children.length - 1].children[i].className == 'i') { //游戲結(jié)束 obj.style.top = '-150px'; count.innerHTML = '游戲結(jié)束,最高得分: ' + num; //關(guān)閉定時(shí)器 clearInterval(obj.timer); //顯示開始游戲 go.children[0].innerHTML = '游戲結(jié)束'; go.style.display = "block"; } } obj.removeChild(obj.children[obj.children.length - 1]); } //點(diǎn)擊與計(jì)分 obj.onmousedown = function (event) { //點(diǎn)擊的不是白盒子 // 兼容IE event = event || window.event; if ((event.target ? event.target : event.srcElement).className == 'i') { //點(diǎn)擊后的盒子顏色 (event.target ? event.target : event.srcElement).style.backgroundColor = "#bbb"; //清除盒子標(biāo)記 (event.target ? event.target : event.srcElement).className = ''; //計(jì)分 num++; //顯示得分 count.innerHTML = '當(dāng)前得分: ' + num; } else { //游戲結(jié)束 obj.style.top = 0; count.innerHTML = '游戲結(jié)束,最高得分: ' + num; //關(guān)閉定時(shí)器 clearInterval(obj.timer); //顯示開始游戲 go.children[0].innerHTML = '游戲結(jié)束'; go.style.display = "block"; } //盒子加速 if (num % 10 == 0) { speed++; } } //松開觸發(fā)停止 obj.onmouseup = function (event) { } }, 20) }
我們?cè)谏掀恼轮兄v到如何用if語(yǔ)句判斷設(shè)定top的值。
這裡我們繼續(xù)為大家講解後續(xù)的程式碼,那麼在上述程式碼中,又出現(xiàn)了一個(gè)if判斷語(yǔ)句。這裡的if語(yǔ)句,是用來(lái)判斷main下的div“row”長(zhǎng)度是否為6即6行div,如果為6(obj.children.length== 6),就透過(guò)for語(yǔ)句循環(huán)判斷每行中(包含4個(gè)div),是否存在一個(gè)有顏色的方塊(class為「i」的div)。
如果有i,則遊戲結(jié)束,然後計(jì)算分?jǐn)?shù)並將top值恢復(fù)到-150px,再關(guān)閉定時(shí)器clearInterval(obj.timer),設(shè)定顯示開始遊戲。
由於文章篇幅原因,這篇文章就跟大家介紹到這裡,在後期的文章中,我們會(huì)繼續(xù)為大家介紹原生js實(shí)現(xiàn)別踩白塊小遊戲的方法。
完整的別踩白塊小遊戲程式碼可參考:《原生JS實(shí)作別踩白塊小遊戲(一)》
以上是原生JS實(shí)現(xiàn)別踩白塊小遊戲(九)的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁(yè)開發(fā)工具

SublimeText3 Mac版
神級(jí)程式碼編輯軟體(SublimeText3)