首页 > 编程语言 >给外联样式表和JavaScript脚本增加版本号的方法

给外联样式表和JavaScript脚本增加版本号的方法

时间:2023-03-01 10:23:36浏览次数:36  
标签:版本号 JavaScript dateNow 样式表 var 方法 css

方法和问题

  • 方法一:前端使用JQuery的方法增加版本号
  • 方法二:前端使用 JavaScript 来增加版本号
  • 方法三:后端代码加载

方法一:前端使用JQuery的方法增加版本号
先上代码

<script src="@Url.Content("~/Content/Web/js/jquery2.1.4.min.js")" type="text/javascript"></script>
<script>
    //更新public.css
    var dateNow = new Date();
    var projectVersion = dateNow.getFullYear() + "" + dateNow.getMonth() + 1 + "" + dateNow.getDate(); //更新public.css
    $("head link[href='/Content/Web/css/bootstrap.min.css']").after("<link href='/Content/Web/css/public.css?v=" + projectVersion + "' rel='stylesheet' type='text/css'>");
</script>

方法二:前端使用 JavaScript 来增加版本号

<script type="text/javascript">
    var dateNow = new Date();
    var projectVersion = dateNow.getFullYear() + "" + dateNow.getMonth() + 1 + "" + dateNow.getDate(); //更新public.css
    var headSelect = document.querySelector("head");
    var node = document.createElement("link");
    node.setAttribute("href", "/Content/Web/css/public.css?v=" + projectVersion);
    node.setAttribute("rel", "stylesheet");
    node.setAttribute("type", "text/css");
    headSelect.appendChild(node);
</script>

可以使用JQuery 为什么要使用 JavaScript?
因为 JavaScript 运行速度会比 JQuery 快那么一点点,而且不用先引入 JQuery库

方法三:后端代码加载
这里我用的是 C# 和 Razor

@{
    var version = DateTime.Now.ToShortDateString().Replace("/","");
}
<link href="@Url.Content("~/Content/Web/css/public.css")?v=@version" rel="stylesheet" type="text/css" />

前面两个方法加载外联样式表文件,页面多少会出现样式渲染跟不上的情况。但用第三种方法会好很多

 

标签:版本号,JavaScript,dateNow,样式表,var,方法,css
From: https://www.cnblogs.com/djd66/p/17167124.html

相关文章

  • HTML页面自动清理js、css文件的缓存(自动添加版本号)
    在web项目开发过程中,我们经常会引用css、js文件,更新文件后常出现缓存问题(明明更改了代码,在浏览器上访问的时候却没有发生变化),这种情况我们通常采用以下两种解决方案:1、手......
  • argument keyword in JavaScript Functions
    argument是一个所有(非箭头)函数都有的对象,它是一个类似数组的对象(但它不是Array)详见:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/argum......
  • JavaScript中单例模式这样用
    如果希望自己的代码更优雅、可维护性更高以及更简洁,往往离不开设计模式这一解决方案。在JS设计模式中,最核心的思想:封装变化(将变与不变分离,确保变化的部分灵活,不变的部分......
  • javascript之正则表达式验证email
    1<!DOCTYPEhtml>2<htmllang="en">34<head>5<metacharset="UTF-8">6<metahttp-equiv="X-UA-Compatible"content="IE=edge">7......
  • JavaScript文件夹上传解决方案
    ​ 项目描述工具类包封装了一些关于分片md5验证、断点续传、分片上传、等方法前端样例使用百度插件WebUploader,插件的源码还是有一定的问题的分片上传是需要前后......
  • JavaScript Window Screen
    JavaScript WindowScreenwindow.screen对象包含有关用户屏幕的信息。WindowScreenwindow.screen对象在编写时可以不使用window这个前缀。一些属性:screen.ava......
  • JavaScript Window - 浏览器对象模型
    JavaScript Window-浏览器对象模型浏览器对象模型(BOM)使JavaScript有能力与浏览器"对话"。浏览器对象模型(BOM)浏览器对象模型(Browser Object Model(BOM)......
  • JavaScript Window Location
    JavaScript WindowLocationwindow.location对象用于获得当前页面的地址(URL),并把浏览器重定向到新的页面。WindowLocationwindow.location 对象在编写时可不使......
  • JavaScript 闭包
    JavaScript 闭包JavaScript变量可以是局部变量或全局变量。私有变量可以用到闭包。全局变量函数可以访问由函数内部定义的变量,如:实例functionmyFunction(){......
  • JavaScript Array(数组) 对象
    JavaScript Array(数组) 对象数组对象的作用是:使用单独的变量名来存储一系列的值。在线实例创建数组,为其赋值:实例varmycars=newArray();mycars[0]="Saab......