升级 jQuery:努力打造健康的 Web 生态

jQuery 对 Web 的影响始终是显而易见的。当 jQuery 在 2006 年首次推出时,几乎立即成为 Web 开发人员的基本工具。它简化了 JavaScript 编程,使操作 HTML 文档、处理事件、执行动画等变得更加容易。从那时起,它在 Web 标准和浏览器功能的演变中发挥了并将继续发挥重要作用。

随着现代 JavaScript 框架的兴起,选择在新项目中使用 jQuery 的开发人员可能会减少,但全球范围内的使用率仍然非常高。在分析 IDC 进行的一项调查结果后,OpenJS 基金会估计 90% 的网站都使用 jQuery。其中大约三分之一使用过时的版本。

作为 Healthy Web 检查活动的一部分,jQuery 团队和 OpenJS 基金会正在努力解决这个问题。本指南将解释为什么保持 jQuery 版本最新很重要,并引导您完成升级 jQuery 的过程。

安全性很重要

安全漏洞:与任何软件一样,jQuery 的代码库中可能包含安全漏洞。这些漏洞的范围从跨站脚本 (XSS) 漏洞到远程代码执行 (RCE) 等更严重的问题。当发现漏洞时,jQuery 团队会发布补丁和更新来解决这些漏洞。通过升级到最新版本的 jQuery,您可以确保您的应用程序受益于这些安全修复程序,从而降低被攻击者利用的风险。

安全最佳实践:较新版本的 jQuery 通常包含安全最佳实践和增强功能,以减轻常见的安全威胁。这些改进可能包括更严格的输入验证、改进对用户生成内容的处理以及更好地防御 XSS 攻击。通过升级,您可以采用这些最佳实践并加强应用程序的安全状况。

合规性要求:许多行业和监管框架要求组织维护最新的软件并及时解决已知的安全漏洞。如果未能升级 jQuery 并解决安全问题,可能会导致不遵守这些要求。

浏览器支持怎么样

jQuery 1.x、2.x 和 3.x 各自具有不同的受支持浏览器列表。然而,考虑到当前浏览器市场的使用情况,jQuery 3.x 支持的浏览器(包括 IE 9+)应该足以满足几乎所有情况。jQuery 4.x 仍将支持 IE11,尽管微软宣布正式不再支持。

如何升级 jQuery

jQuery 团队提供了 jQuery Migrate 插件,使 jQuery 的升级变得尽可能简单。它主要是作为一种开发工具,在浏览器控制台中生成警告消息,可用于识别和修复兼容性问题。它暂时恢复已弃用的功能和行为,以便在解决兼容性问题的同时,旧代码仍可在较新版本的 jQuery 上运行。

jQuery Migrate 有两个版本:1.x 和 3.x(没有 Migrate 2.x)。一次只能使用一个版本,但如果从 jQuery 1.9 之前的 jQuery 版本升级,您可能需要连续使用这两个版本。

例如,如果您当前的 jQuery 版本是 1.4.4,请首先使用 jQuery Migrate 1.x 升级到 jQuery 1.12.4,然后使用 jQuery Migrate 3.x 升级到最新的 jQuery,截至撰写本文时为 3.7.1。如果您当前的版本是 2.2.4,则只需使用 jQuery Migrate 3.x 升级到最新的 jQuery。

使用 jQuery 迁移

首先,在加载 jQuery 后将 jQuery Migrate 添加到您的页面。

<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<script src="https://code.jquery.com/jquery-migrate-3.4.1.js"></script>

然后,测试您的网站或应用程序。由于使用了不同的 jQuery API,jQuery Migrate 会将消息记录到控制台,警告有关任何弃用或重大更改的信息。一次解决一个警告。

最后,当控制台不再记录任何警告并且所有重大更改均已解决时,可以删除 jQuery Migrate 并且迁移完成!有关更多详细信息,请参阅 jQuery Migrate 自述文件。

jQuery 升级指南

当您正在寻找有关重大更改的更多详细信息,或者您只想查看每个版本的重大更改的完整列表时,jQuery 升级指南可能会很有帮助。 jQuery 1.9、3.0 和 3.5 的升级指南列出了这些版本中发生的所有重大更改。列出的大多数重大更改可能不适用于您的代码,但这些指南为每个更改添加了一些上下文和解释。

关于未来的 jQuery

随着 jQuery 4.0 的出现,您可能想知道升级到 jQuery 4.x 的过程是什么。答案是,与升级到 jQuery 3.x 一样,仍然可以一步完成。换句话说,在升级到 jQuery 4.x 之前不需要升级到 jQuery 3.x。您将能够直接从 1.9+ 升级到 jQuery 4.x。我们还将准备 jQuery 4.0 的升级指南。

最后

升级 jQuery 对于维护 Web 应用程序的安全性、性能和兼容性至关重要。通过遵循本指南中概述的步骤,您可以安全地升级到最新版本的 jQuery 并利用其新功能和改进,同时确保您的 Web 应用程序免受任何发现的漏洞的影响。请记住定期检查更新并随时了解新版本,以使您的代码库保持最新状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/570954.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

idea中打印日志不会乱码,但是部署到外部tomcat中乱码了。

问题&#xff1a;如图Tomcat乱码&#xff0c;而且启动时的系统日志不会乱码&#xff0c;webapp中的打印日志才乱码。 idea中的情况如下&#xff1a;正常中文展示。 问题分析&#xff1a;网上分析的原因是Tomcat配置的字符集和web应用的字符集不匹配&#xff0c;网上集中的解决…

Springboot的日常操作技巧

文章目录 1、自定义横幅2、容器刷新后触发方法自定义3、容器启动后触发方法自定义**CommandLineRunner**ApplicationRunner 不定时增加 参考文章 1、自定义横幅 简单就一点你需要把banner.text放到classpath 路径下 &#xff0c;默认它会找叫做banner的文件&#xff0c;各种格式…

“奇观”初见,祁门竞赛上海正式发

布给上下山水、左右人文的“徽州”&#xff0c;另起一笔“烟火” 城市更新从空间营造进入地方创生。何为地方&#xff1f;如何创生&#xff1f;其关键也许在于“持续打开”&#xff0c;源源不断吸引新生力量参与&#xff0c;从在地文化中生长出创作生态。 镶嵌于长三角腹地&a…

Ubuntu Pycharm安装

下载PyCharm&#xff0c;https://www.jetbrains.com/pycharm/download/?sectionlinux 然后按照下图执行安装&#xff1a; 安装的时候可能出现的问题&#xff1a; 问题1&#xff1a;No JDK found. Please validate either PYCHARM_JDK, JDK_HOME or JAVA_HOME environment var…

SHELL脚本(全是干货)

一、shell是什么&#xff1f; 1. 1 shell 是一种脚本语言 脚本语言的本质是一个文件&#xff0c;文件里面存放的是特点格式的指令&#xff0c;系统可以使用脚本解析器翻译或者解析指令&#xff0c;并且执行&#xff08;它不需要编译&#xff09; shell 即是应用程序&#xff…

江开2024年春《大学英语(B)(2) 060052》过程性考核作业4参考答案

答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 单选题 1阅读Passage One&#xff0c;回答C-1C-4个问题。请…

高频前端面试题汇总之HTML篇

1. src和href的区别 src和href都是用来引用外部的资源&#xff0c;它们的区别如下&#xff1a; src&#xff1a; 表示对资源的引用&#xff0c;它指向的内容会嵌入到当前标签所在的位置。src会将其指向的资源下载并应⽤到⽂档内&#xff0c;如请求js脚本。当浏览器解析到该元素…

OpenCV 如何实现边缘检测器

返回:OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV如何实现拉普拉斯算子的离散模拟 下一篇 :OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 目标 在本教程中&#xff0c;您将学习如何&#xff1a; 使用 OpenCV 函数…

为什么浏览器打印后会有一个undefined

问题&#xff1a; 原因&#xff1a;浏览器中调试代码&#xff0c;浏览器会默认输出打印语句返回值&#xff0c;多行调试命令返回时只执行最后一个返回值 1、这里没有打印操作&#xff0c;但是返回了1。控制台输出的是调试命令的【返回值】 2、如果调试命令本身就带有打印的语…

C系统编程:从零手搓一个shell

背景 这么久没更新就是在干这件事&#xff01;&#xff01;因为系统编程已经学的差不多了&#xff0c;所以想找几个项目练练手&#xff0c;之前就一直想写一个自己的shell&#xff01;&#xff01;现在终于有机会实现了。 首先说明一下我的操作系统&#xff1a;Arch linux 服务…

HFSS端口介绍2---波端口

前面我们讨论了Lumped Port设定相关的内容,这节我们继续讨论Wave Port(波端口)使用相关的问题。 波端口使用范围 封闭结构:如波导、同轴电缆等 包含多个传播模式的模型 端口平面在求解区域外的模型 模型中包含均匀的波导或者传输线结构 波端口的大小 对于封闭的传输线结构:边…

【C++】vector常用函数总结及其模拟实现

目录 一、vector简介 二、vector的构造 三、vector的大小和容量 四、vector的访问 五、vector的插入 六、vector的删除 简单模拟实现 一、vector简介 vector容器&#xff0c;直译为向量&#xff0c;实践中我们可以称呼它为变长数组。 使用时需添加头文件#include<v…

【御控工业物联网】JAVA JSON结构转换、JSON结构重构、JSON结构互换(5):对象To对象——转换映射方式

御控官网&#xff1a;https://www.yu-con.com/ 文章目录 御控官网&#xff1a;[https://www.yu-con.com/](https://www.yu-con.com/)一、JSON结构转换是什么&#xff1f;二、术语解释三、案例之《JSON对象 To JSON对象》四、代码实现五、在线转换工具六、技术资料 一、JSON结构…

MySQL索引为什么选择B+树,而不是二叉树、红黑树、B树?

12.1.为什么没有选择二叉树? 二叉树是一种二分查找树,有很好的查找性能,相当于二分查找。 二叉树的非叶子节值大于左边子节点、小于右边子节点。 原因: 但是当N比较大的时候,树的深度比较高。数据查询的时间主要依赖于磁盘IO的次数,二叉树深度越大,查找的次数越多,性能…

openstack-镜像封装 7

再克隆两台主机并且安装图形化组件和虚拟化组件 进入图形化界面并安装一个虚拟化管理器 根下创建一个目录&#xff0c;虚拟化管理器新添加一个路径 创建虚拟化 配置虚拟化主机 设置虚拟化主机配置 安装所需软件 清理创建云主机时安装的组件 主机安装虚拟化工具 清理虚拟化缓存 …

Mysql全局优化总结

Mysql全局优化总结 从上图可以看出SQL及索引的优化效果是最好的&#xff0c;而且成本最低&#xff0c;所以工作中我们要在这块花更多时间 服务端系统参数 官方文档&#xff1a;https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_connections…

x汽车登陆网站登陆rsa加密逆向

声明&#xff1a; 本文章内容仅供学习交流&#xff0c;不用于其他其他任何目的&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff0c; 各位看官好哇&#xff0c;今天给大家带来一篇web自动化逆向的文章&#xff0c;如下图当前我…

CMplot rMVP | 全基因组曼哈顿图和QQ图轻松可视化!

文章目录 1.CMplot1.1 CMplot介绍1.2 CMplot-DEMO1.3 CMplot参数 2.rMVP2.1 rMVP介绍2.2 rMVP-DEMO2.3 rMVP参数 1.CMplot 1.1 CMplot介绍 CMplot&#xff1a;https://github.com/YinLiLin/CMplot 这是一个做全基因组对SNP可视化神器了&#xff0c;尹立林教授写的R包。主打两…

Uptime Kuma 使用指南:一款简单易用的站点监控工具

我平时的工作会涉及到监控&#xff0c;而站点是一个很重要的监控项。项目上线后&#xff0c;我们通常会将站点监控配置到云平台上&#xff0c;以检测各站点的连通性。但随着项目不断增多&#xff0c;云平台上的配额就有点捉急了。针对这个情况&#xff0c;我们可以试试这个开源…
最新文章