用JavaScript在HTML中隐藏类?
我已经完成了我的JavaScript任务,在那里我不得不做一个扫雷游戏,结果比预期的要好,而且效果很好!然而,在这方面很容易作弊,因为我使用类来制作炸弹,这些炸弹显示在HTML文件中。我有什么办法可以绕开这件事吗?(下面的代码段起作用,但缺少img文件)用JavaScript在HTML中隐藏类?,javascript,html,Javascript,Html,我已经完成了我的JavaScript任务,在那里我不得不做一个扫雷游戏,结果比预期的要好,而且效果很好!然而,在这方面很容易作弊,因为我使用类来制作炸弹,这些炸弹显示在HTML文件中。我有什么办法可以绕开这件事吗?(下面的代码段起作用,但缺少img文件) 函数$(szelektor){ 返回文档。查询选择器(szelektor); } 函数generateNew(){ $(“.matrix”).innerHTML=“”; $(“#eredmeny”).innerHTML=“”; 游戏(); }
函数$(szelektor){
返回文档。查询选择器(szelektor);
}
函数generateNew(){
$(“.matrix”).innerHTML=“”;
$(“#eredmeny”).innerHTML=“”;
游戏();
}
document.addEventListener('DOMContentLoaded',game);
函数游戏(){
{
常量矩阵=$(“.matrix”);
const eredmeny=$(“#eredmeny”);
设magassag=16;
设szelesseg=30;
让negyzetek=[];
让zaszlokSzama=99;
让vegeVanE=false;
函数szamlo(){
var-secs=0;
var id=setInterval(函数(){
secs+=0.01;
如果(vegeVanE){
清除间隔(id);
eredmeny.innerHTML++=('
Idő:'+(Math.round(secs*100)/100).toFixed(2)+'másodperc');
}
else$(secs*100)/100.toFixed(2);
}, 10);
};
函数矩阵一般(){
常量bombakMatrix=数组(zaszlokSzama).fill('a');
常量uresMatrix=数组(szelesseg*magassag zaszlokSzama).fill('a');
const jatekMatrix=uresMatrix.concat(bombakMatrix.sort)(()=>Math.random()-0.5);
控制台日志(jatekMatrix);
console.log(szelesseg*magassag-zaszlokSzama);
设idseged=0;
for(设i=0;i=0&&negyzetid+i+j=0&&negyzetid+i+j=0&&negyzetid+i+j 0){
negyzetek[negyzetid].setAttribute('data','flagged');
negyzetek[negyzetid].classList.add('clicked');
扎斯洛克萨马--;
$('hatralevoZaszlok')。innerHTML=zaszlokSzama;
尼尔特();
}
}
否则{
如果(!negyzetek[negyzetid].classList.contains('clicked')| | negyzetek[negyzetid].getAttribute('data')=='flagged'){
negyzetek[negyzetid].removeAttribute('data');
negyzetek[negyzetid].classList.remove('clicked');
zaszlokSzama++;
$('hatralevoZaszlok')。innerHTML=zaszlokSzama;
}
}
}
功能Veszttet(negyzet){
eredmeny.innerHTML='游戏结束!';
vegeVanE=true;
forEach(negyzet=>{
if(negyset.classList.contains('a')){
setAttribute('data','bomba');
}
})
}
函数nyertE(){
var jokSzama=0;
//(negyzetek[i].getAttribute('data','flagged')&&negyzetek[i].classList.contains('a')) ||
for(设i=0;i
#eredmeny{
边缘顶部:5px;
}
.矩阵{
高度:640px;
宽度:1200px;
显示器:flex;
柔性包装:包装;
左边距:50像素;
边缘顶部:20px;
边缘底部:10px;
}
钮扣{
宽度:200px;
高度:50px;
}
#贾特克特{
宽度:1300px;
保证金:0自动;
}
.矩阵师{
高度:40px;
宽度:40px;
}
div{
字体大小:25px;
文本对齐:居中;
字体系列:“Roboto Mono”,monospace;
}
A. {
背景图像:url(../Aknakereso/Pics/Tile.png)
const GRAY_CELL = document.createElement('a');
// add some classes etc
class GridCell {
constructor(x, y, hasBomb, grid){
this.x = x;
this.y = y;
this.hasBomb = hasBomb;
this.exposed = false;
this.grid = grid; // required if it needs to calculate a number of how many bombs are in the vicinity
}
expose(){
this.exposed = true;
}
// return the new state
render(){
if (!this.exposed) return GRAY_CELL.cloneNode();
if (this.hasBomb) return BOMB_CELL.cloneNode();
else {
return NUMBER_CELL[this.calculateScore(this.grid)].cloneNode(); // return a cell containing a number
}
}
}
// assuming CSS Grid is used to control layout, not HTML
function renderGrid(grid){
const elems = [];
for(const x = 0; x < grid.length; x++) {
const rowLen = grid[x].length;
for(const y = 0; y < rowLen; y++) {
elems.push(grid[x][y].render());
}
}
// update the DOM in some way
replaceElemsInDom(elems)
}
// init the grid, doing stuff like grid[x][y] = new GridCell(x,y,true,grid)
const grid = initGrid(numberOfBombs, xDim, yDim);