第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何重置我的 javascript 游戲中的所有內(nèi)容

如何重置我的 javascript 游戲中的所有內(nèi)容

我用 JS 構(gòu)建了一個(gè)廣泛的掃雷游戲,我正在嘗試實(shí)現(xiàn)一種有效的方法來(lái)通過(guò)點(diǎn)擊重新啟動(dòng)游戲,但我做空了?,F(xiàn)在我只是讓整個(gè)頁(yè)面在點(diǎn)擊時(shí)重新加載,但這不是我想要發(fā)生的。我構(gòu)建游戲的方式,一切都被加載,所以我不確定如何在不重構(gòu)我的所有代碼的情況下處理這個(gè)問(wèn)題。我嘗試創(chuàng)建一個(gè)函數(shù)來(lái)重置所有全局變量,刪除我之前創(chuàng)建的所有 div,然后調(diào)用一個(gè)我創(chuàng)建的函數(shù)來(lái)包裝我的所有代碼并重新做一遍。這種方法刪除了 div,但沒(méi)有再次放置它們。這是我的主要功能function createBoard() {  const bombsArray = Array(bombAmount).fill('bomb')  const emptyArray = Array(width * height - bombAmount).fill('valid')  const gameArray = emptyArray.concat(bombsArray)  //  --Fisher–Yates shuffle algorithm--  const getRandomValue = (i, N) => Math.floor(Math.random() * (N - i) + i)  gameArray.forEach((elem, i, arr, j = getRandomValue(i, arr.length)) => [arr[i], arr[j]] = [arr[j], arr[i]])  // --- create squares ---  for (let i = 0; i < width * height; i++) {    const square = document.createElement('div')    square.setAttribute('id', i)    square.classList.add(gameArray[i])    grid.appendChild(square)    squares.push(square)    square.addEventListener('click', function () {      click(square)    })    square.oncontextmenu = function (e) {      e.preventDefault()      addFlag(square)    }  }  //add numbers  for (let i = 0; i < squares.length; i++) {    let total = 0    const isLeftEdge = (i % width === 0)    const isRightEdge = (i % width === width - 1)    if (squares[i].classList.contains('valid')) {      //left      if (i > 0 && !isLeftEdge && squares[i - 1].classList.contains('bomb')) total++      //top right      if (i > 9 && !isRightEdge && squares[i + 1 - width].classList.contains('bomb')) total++      //top       if (i > 10 && squares[i - width].classList.contains('bomb')) total++      //top left       if (i > 11 && !isLeftEdge && squares[i - 1 - width].classList.contains('bomb')) total++      //right       if (i < 129 && !isRightEdge && squares[i + 1].classList.contains('bomb')) total++      //bottom left       if (i < 120 && !isLeftEdge && squares[i - 1 + width].classList.contains('bomb')) total++      這有效地刪除了加載時(shí)創(chuàng)建的網(wǎng)格方塊,但不會(huì)再次創(chuàng)建它們。我希望能夠再次運(yùn)行該初始函數(shù)。我怎樣才能做到這一點(diǎn)?這是一個(gè)代碼筆
查看完整描述

1 回答

?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個(gè)贊

您正在刪除.grid容器,而不是

grid.remove("div");

使用以下語(yǔ)句刪除容器的所有內(nèi)容

grid.innerHTML = "";


查看完整回答
反對(duì) 回復(fù) 2022-12-09
  • 1 回答
  • 0 關(guān)注
  • 77 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)