html 如何用JavaScript在页面的所有链接上附加一个随机数(或以毫秒为单位的时间)?

jtoj6r0c  于 2022-11-20  发布在  Java
关注(0)|答案(2)|浏览(255)

我在地址https://MyPage/index.html有一个静态HTML页面
该页面包含多个图像,它们位于https://MyPage/MyImages
这些图像在HTML源代码中的链接方式如下:
…<span><img width=x height=y src="MyImages/imageXYZ.png"</span>…
当单击一个按钮时,或者更好的是,当加载页面时,所有的图像链接都应该通过附加一个随机数来重写,例如,以毫秒为单位的当前时间,这样链接看起来就像这样:
…<span><img width=x height=y src="MyImages/imageXYZ.png?1587624427"</span>…
我认为,可以在这里找到可能的出发点:
Changing all links on page
How to Change All Links with javascript
How can I change every link on a page to something new?
从这里开始,我如何添加到给出的例子中,这样(而不是一个常数重定向)一个随机数或毫秒时间被附加到所有的图像链接?

sxpgvts3

sxpgvts31#

第一个
在循环中,您可以计算以毫秒为单位的时间,并将其添加到每个图像的源代码中。
现在,如果你想为每个图像不同的数字,你必须添加一些东西(随机数?)。这里为4个图像的一切都在同一毫秒内完成

oyxsuwqo

oyxsuwqo2#

在此期间我做了这样的事情:

<body onload="CacheBuster()";>

<script>
function CacheBuster() {
    document.querySelectorAll('img').forEach(e => {
      const dateStr = Date.now();
      const date = new Date(dateStr);
      e.src = e.src + '?' + date.getTime();
    })
    }
</script>

这有什么好处吗?它似乎完美地工作!

相关问题