如何在没有查看器输入的情况下运行javascript

时间:2018-11-14 20:00:27

标签: javascript inputbox

我有一个JavaScript效果,是为查看者输入而编写的。 如何随机化值,从而消除观看者的互动?我可以删除标签,但数字仍然可见。

以下是HTML:

    <div id="control-box">
        <div>
            <label>Num Raindrops</label>
            <input id="num-rain" type="number" value="250" min="1" />
        </div>
        <div>
            <label>Rain Angle</label>
            <input id="angle" type="number" value="20" min="0" max="90" />
        </div>
        <div>
            <label>Angle Tightness</label>
            <input id="tightness" type="number" value="0" min="0" />
        </div>
        <div>
            <label>Raindrop Length</label>
            <input id="length" type="number" value="20" min="0" />
        </div>
        <div>
            <label>Variable Raindrop Length</label>
            <input id="var_length" type="number" value="0" min="0" />
        </div>
        <div>
            <label>Raindrop Speed</label>
            <input id="speed" type="number" value="7" min="0" />
        </div>
        <div>
            <label>Variable Raindrop Speed</label>
            <input id="var_speed" type="number" value="0" min="0" />
        </div>
    </div>
    <canvas id="rain"></canvas>

1 个答案:

答案 0 :(得分:0)

好的,因此您已经解决了大部分要执行的操作。这篇文章不知道您的JavaScript的样子,所以请忍受:

您已经在DOM元素中设置了范围,因此将其转换为JavaScript,您可以执行以下操作:

function getRandomArbitrary(min, max) {
    return Math.random() * (max - min) + min;
}

var numRaindrops = getRandomArbitrary(1, 1000); //minimum 1 drop, maximum 1000
var rainAngle = getRandomArbitrary(0, 90); //minimum 0 deg, maximum 90deg
var tightness = getRandomArbitrary(min, max);
...

然后将这些值传递给绘制画布的函数。这样可以确保您设置的默认value="{{value}}"不是代码可以产生的唯一值!

现在,如果您只是想隐藏表单,并使用创建的DOM仍然可以获取值(再次,据我所知,这将使值static而不是{{1 }},您可以只使用dynamiccss输入,这样它们就不会显示在屏幕上。