这实际上是为了了解更多关于 JavaScript 和 CSS 的信息和学习目的。我有一个本地浏览器索引页面,我想在加载时旋转背景图像。在环顾四周并尝试了不同的解决方案之后,我选择了基本的旋转功能:
<html>
<head>
<script language="javascript" type="text/javascript">
function rotate()
{
var imgArray = new Array("img1.jpg", "img2.jpg", "img3.jpg");
var aImg = Math.floor(Math.random()*imgArray.length);
var img = imgArray[aImg];
document.body.style.background = "url(" + img + ") no-repeat";
document.body.style.backgroundSize = "cover";
}
</script>
</head>
<body onload="rotate()">
</body>
</html>
在此过程中,在我只是将其设置backgroundSize
为封面以填充窗口之前,我正在考虑在从数组中选择它们之后将它们设置为背景图像之前调整图像大小的想法。
我做了很多搜索,我发现唯一真正可行的解决方案是通过 ID 选择元素,但这也要求图像具有关联的 ID,例如在 HTML 代码中的 IMG 属性中。此处使用 CSS 在 JavaScript 中选择并设置图像。
我尝试使用img.width
/img.height
和img.style.width
/设置图像尺寸img.style.height
,以及我遇到的其他一些随机解决方案,但是每当我尝试更改这些图像时,图像要么不会改变,要么根本不显示。
function rotate()
{
var imgArray = new Array("img1.jpg", "img2.jpg", "img3.jpg");
var aImg = Math.floor(Math.random()*imgArray.length);
var img = imgArray[aImg];
image = rsize(img);
document.body.style.background = "url(" + image + ") no-repeat";
document.body.style.backgroundSize = "cover";
}
function rsize(image)
{
image.style.width = "300px";
image.style.height = "300px";
return image;
}
我知道我可能在这里做错了什么。在这种情况下,我可以调整这些图像的大小吗?还是有更好的方法来构建它?
提前致谢。