如何显示多个答案(javascript)

时间:2018-10-03 17:51:25

标签: javascript

我制作了一个rng(随机数生成器),我想将其制作为骰子生成器。因此,我需要掷出多个骰子。我的问题是,每次尝试从不同的“框”生成数字时,以前的结果都会被覆盖。我尝试将'min','max'更改为编号,但是这样做时不会显示结果。任何帮助表示赞赏。先感谢您。

import pygame
from opensimplex import OpenSimplex
tmp = OpenSimplex()

pygame.init()
display_width = 800
display_height = 600
black = (40,40,40)
gameDisplay = pygame.display.set_mode((display_width,display_height))
gameDisplay.fill(black)
gameDisplay.convert()
clock = pygame.time.Clock()

dimensions = [100,100]
size = 40

def mapping(x):
    y = (x + 1) * 10 + 40
    return y

class GroundCell:
    def __init__(self,x,y,dim):
        self.x = x
        self.y = y
        self.dim = dim

tempcells = []
allCells = []

for a in range(0,dimensions[0]):
    tempcells = []
    for b in range(0,dimensions[1]):
        tempcells.append(GroundCell(a*size,b*size,mapping(tmp.noise2d(a,b))))
    allCells.append(tempcells)

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            quit()
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                pygame.quit()
                quit()


    for a in allCells:
        for b in a:
            pygame.draw.rect(gameDisplay,(b.dim,b.dim,b.dim),(b.x,b.y,size,size))

    pygame.display.update()
    clock.tick(120)
    gameDisplay.fill(black)

1 个答案:

答案 0 :(得分:0)

这里有一些东西,但是 如果您打算以任何方式选择和使用这些元素,则需要具有唯一的元素ID。

我将这个问题简化为最简单的情况,只有两个盒子。试试这个:

Sample JSBin Demo

JavaScript ...

function generateRandomNumber(elementid){
    var min = parseInt(document.getElementById('min' + elementid).value);
    var max = parseInt(document.getElementById('max' + elementid).value);
    var rand = Math.floor(Math.random() * (max - min + 1)) + min;
    document.getElementById('display' + elementid).innerText = rand;
}

HTML ...

<label>Min</label>
<input id="min1" type="text" /><br />
<label>Max</label>
<input id="max1" type="text" /><br />
<button onclick="generateRandomNumber('1');">Generate</button>
<div id="display1" style="font-size:60px;"></div>

<label>Min</label>
<input id="min2" type="text" /><br />
<label>Max</label>
<input id="max2" type="text" /><br />
<button onclick="generateRandomNumber('2');">Generate</button>
<div id="display2" style="font-size:60px;"></div>

我做的最重要的事情是使ID唯一。不再有id="display"元素,但是现在有了id="display1"id="display2"

此外:您有多个<HEAD/>块和<BODY/>块彼此相交。这可能不是主要问题,但没有帮助。