需要帮助与Javascript生成HTML中的数字。我已经接近了,但是不能让它正常工作。如果能帮上忙,我们将不胜感激。
http://jsfiddle.net/xmPgR/251/
function getNumber() {
var minNumber = 0; // The minimum number you want
var maxNumber = 100; // The maximum number you want
var randomnumber = Math.floor(Math.random() * (maxNumber + 1) + minNumber); // Generates random number
$('#myNumber').html(randomnumber); // Sets content of <div> to number
return false; // Returns false just to tidy everything up
}
window.onload = getNumber; // Runs the function on click
document.getElementById("yourNumber").innerHTML = randomnumber;
<div id="myNumber"></div>
<p id="yourNumber">
</p>
发布于 2017-09-06 12:49:54
您的onload
在下一条语句之后工作,因为它是异步工作的。除此之外,你在它的作用域之外使用了一个不是accessible
的randomnumber
。
因此,我建议您从函数中返回randomnumber
,并在onload
事件处理程序中使用该函数。在调用函数处理程序中,获取数字并分配给元素的文本。
如果你的getNumer
的逻辑是返回数字,不要在里面赋值,只返回数字。它的职责是返回一个随机数。将范围传递给它,不要硬编码:在另一个地方,你可能需要一个不同范围内的随机数。其他逻辑在该函数之外实现。
function getRandomNumber(minRange, maxRange) {
return Math.floor(Math.random() * (maxRange + 1) + minRange);
}
window.onload = function() {
const rand = getRandomNumber(0, 100);
document.getElementById("yourNumber").innerHTML = rand;
$('#myNumber').html(rand);
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myNumber"></div>
<p id="yourNumber"></p>
发布于 2017-09-06 12:53:01
这就是了:
function getNumber() {
var minNumber = 0; // The minimum number you want
var maxNumber = 100; // The maximum number you want
var randomnumber = Math.floor(Math.random() * (maxNumber + 1) + minNumber); // Generates random number
document.getElementById("myNumber").innerHTML = randomnumber; // Sets content of <div> to number
return false; // Returns false just to tidy everything up
}
window.onload = getNumber; // Runs the function on click
<div id="myNumber"></div>
<p id="yourNumber">
</p>
https://stackoverflow.com/questions/46075684
复制相似问题