我需要更新几百个静态HTML页面,版权日期硬编码在页脚。我想用一些每年都会自动更新的JavaScript来替换它。

目前我正在使用:

<script type="text/javascript">var year = new Date();document.write(year.getFullYear());</script>

就这么短了吗?


当前回答

根据chrome审核

对于连接速度慢的用户,动态注入外部脚本 通过document.write()可以延迟页面加载数十秒。 https://web.dev/no-document-write/?utm_source=lighthouse&utm_medium=devtools

所以没有误差的解是:

(new Date).getFullYear();

其他回答

在网站上打印当前年份的最短方法

只需使用这段代码

<?php echo date('Y'); ?>

如果你在你的网站上多次需要当前年份,你可以这样做:

document.querySelectorAll(“copy-year”)。forEach(el => { 埃尔。textContent = ' ${el。textContent} - ${new Date().getFullYear()} '; }); 版权所有公司<copy-year>1234</copy-year>©

我知道,这不是最短的方法,但它真的很有效。

PS:你需要有JS在你的页面底部或使用延迟属性的脚本标签。

Easy-peasy !

< p >软件是 < script type = " text / javascript " > 文档。写(新的日期().getFullYear ()); > < /脚本 < / p >

> < div >是<脚本文件。</script>, Company. write(new Date(). getfullyear ()); < / div >

TJ的回答很好,但我遇到了一个场景,我的HTML已经呈现,文档。写脚本将覆盖所有的页面内容,只有日期年。

对于这种情况,您可以使用以下代码将一个文本节点附加到现有元素:

<div>
    &copy;
    <span id="copyright">
        <script>document.getElementById('copyright').appendChild(document.createTextNode(new Date().getFullYear()))</script>
    </span>
    Company Name
</div>