我正在寻找一种在html div上生成随机位置的方法。我创建了一个javascript函数,如下所示:
function randomInRange(min, max) {
return(Math.floor((Math.random() * (max - min) + 1) + min));
}
我想通过将left和top属性更改为(position:relative; left:0px; top:0px)随机生成的数字,在div的css中生成一个随机位置。我似乎无法找到最大和最大函数的最小值,因为div使用宽度的百分比。
#stage {
float: left;
background-color: pink;
width: 100%;
height: 70%;
}
单击某个按钮时执行该功能
var button = document.getElementById("button");
button.onclick = function () {
shape.style.left = randominrange(0, stage.style.width);
shape.style.top = randominrange(0, stage.style.height);
}
//the shape is a circle div that shows where the generated point is
我刚刚开始使用javascript几天前似乎无法找到一种方法
答案 0 :(得分:0)
最小值为0,最大值为元素的适当宽度和高度属性。 See here for an understanding of the different width properties
我认为您需要element.outerWidth(true)
和element.outerHeight(true)
。
答案 1 :(得分:0)
var stage = document.getElementById('stage');
var stageWidth = stage.offsetWidth;
var stageHeight = stage.offsetHeight
现在你可以使用stageWidth& stageHeight用于函数调用
答案 2 :(得分:0)
使用clientWidth
和clientHeight
代替width
和height
button.onclick = function () {
shape.style.left = randominrange(0, stage.style.clientWidth);
shape.style.top = randominrange(0, stage.style.clientHeight);
}
之间的差异