【发布时间】:2021-07-22 08:11:08
【问题描述】:
我的代码在做什么:
- 创建一个
img标签,每 3 秒更改一次图像。 - 背景图片是静态的
- 目前,我们有一个动态的
img标记,它在静态背景之上每 3 秒更改一次。因为这是一个测试,看看我可以让它动态
我想做的事:
-
script标记内的背景图像以更改并以某种方式使 URL() 动态化。背景图片应该会在 3 秒内改变
<div class="text-center background">
<p>come content</p>
<img id="image" src="~/images/baseball.jpg">
<script type = "text/javascript">
var image = document.getElementById("image");
var currentPos = 0;
var images = ["/images/baseball.jpg", "/images/basketball.jpg", "/images/football.jpg", "/images/soccerball.jpg"], i = 0;
function changeimage()
{
if (++currentPos >= images.length)
currentPos = 0;
image.src = images[currentPos];
}
setInterval(changeimage, 3000);
</script>
</div>
<style>
.background{
background-image: url(/images/basketball.jpg); //<<<-----this line needs to be dynamic
background-repeat: no-repeat;
background-size: cover;
height: 1000px;
}
</style>
我知道我可能需要稍微重构一下我的代码。我只是不知道如何在有背景的情况下去做。使用普通图像标签很容易,因为我只需将新图像路径重新分配给旧 ID。
其他信息:
框架:.netcore-mvc
引导程序:4.6
【问题讨论】:
-
您可以删除 razor 和 asp 标签,您的尝试和预期的解决方案将在 javascript 中,因此服务器架构无关紧要。
-
stackoverflow.com/a/7319497/31782 ?没有Javascript。
标签: c# css background-image