要解决按钮的随机大小和位置导致的意料之外的行为,可以使用以下代码示例:
HTML代码:
CSS代码:
#randomButton {
position: absolute;
}
JavaScript代码:
function getRandomNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function getRandomPosition(element) {
var bodyRect = document.body.getBoundingClientRect();
var elemRect = element.getBoundingClientRect();
var offsetX = bodyRect.left - elemRect.left;
var offsetY = bodyRect.top - elemRect.top;
var posX = getRandomNumber(0, window.innerWidth - elemRect.width) + offsetX;
var posY = getRandomNumber(0, window.innerHeight - elemRect.height) + offsetY;
return { x: posX, y: posY };
}
function getRandomSize(min, max) {
return getRandomNumber(min, max) + 'px';
}
var randomButton = document.getElementById('randomButton');
randomButton.style.width = getRandomSize(50, 200);
randomButton.style.height = getRandomSize(20, 80);
var randomPosition = getRandomPosition(randomButton);
randomButton.style.left = randomPosition.x + 'px';
randomButton.style.top = randomPosition.y + 'px';
这段代码使用了getRandomNumber
函数来生成一个指定范围内的随机数。getRandomPosition
函数计算了按钮位置的随机偏移量,并根据窗口的宽度和高度来生成随机位置。getRandomSize
函数生成一个指定范围内的随机按钮大小。
在JavaScript代码的最后,我们获取按钮元素,并使用生成的随机大小和位置来设置按钮的样式。
这样,按钮的大小和位置将在每次加载页面时随机生成,避免了意料之外的行为。