Maison  >  Article  >  interface Web  >  jQuery publie la nouvelle version 3.6.1, découvrez les améliorations !

jQuery publie la nouvelle version 3.6.1, découvrez les améliorations !

青灯夜游
青灯夜游avant
2022-09-06 19:45:043024parcourir

Après plus d'un an, jQuery a de nouveau publié la nouvelle version 3.6.1. Utilisez-vous toujours JQ ? Jetons un coup d'œil à quelques améliorations de jQuery 3.6.1. J'espère que cela vous sera utile !

jQuery publie la nouvelle version 3.6.1, découvrez les améliorations !

La semaine dernière (2022-08-26) jQuery vient de mettre à jour une version de maintenance 3.6.1 Cela fait un an et cinq mois depuis la sortie de la dernière version. Son responsable a exprimé qu'elle le ferait. envisagez principalement de résoudre les problèmes de mise au point et de défocalisation (focus et flou) et certains cas extrêmes insaisissables, qui peuvent être dus à des raisons historiques liées à la mise au point dans focus & blur)的问题以及一些难以捉摸的边缘情况,可能是历史原因,jQuery 中与焦点有关的地方都很难改变,团队从未完全正确地修复,所以他们暂时保留这些内容,并将在未来解决,特别是因为这些更改最终可能需要发布一个新的主要版本。【相关教程推荐:jq教程

所谓维护版本是指在不更改任何核心组件或添加新功能的情况下纠正安全漏洞或小错误的软件版本。它们通常以十分之一或百分之一来编号,以区别于主要版本,一般来说,软件工程师会尽可能快地完成这个过程,并且不会牺牲编码质量或可靠性。

以下是 jQuery 3.6.1 的一些改进:

基础设施改进

在这个版本中团队做了很多工作来更新项目的一些测试和构建基础设施,包括将 CITravis CI 迁移到 GitHub Actions,在 Node 16 而不是 Node 15 上进行测试,通过 https 加载他们的测试监听器,以及添加更多自定义构建的准确测试。

不失去焦点

尽管困难,此版本中仍有一个与焦点相关的修复。

即使在移除了 jQuery 焦点处理程序之后,我们对焦点的特殊事件处理仍然保持连接,这破坏了任何后续的手动焦点触发器。例如当:

$elem.on("focus", function() {}).off("focus").trigger("focus");

focus 不会触发。

在 addClass(array) 中跳过错误

在不增加任何大小的情况下,添加了对跳过传递给addClass or的数组中的任何错误值的支持removeClass

这使得代码如下:

elem.addClass( [ "a", "", "b" ] ); // 添加`a`&`b`类。复制代码

与自定义 CSS 属性值的规范保持一致

现在为自定义 CSS 属性值 trimmed,以前类似的东西--prop: value ;会保留值中的前导和尾随空格,返回“value”。

附加带有 HTML 注释的脚本

团队在正则表达式中发现了一个问题,即在附加脚本时从脚本中去除 HTML 注释,最终在某些边缘情况下删除了部分可执行脚本。幸运的是更多地依赖浏览器可以成为解决问题的方法,但团队仍然需要在 3.x 分支中为 IE 去除 CDATA 部分。这将在 4.0 中删除。

jQuery.trim 的性能提升

虽然jQuery.trim已在主分支上删除以支持原生的String#trim(准备下一个主要版本上线),但对于分支支持的某些浏览器(例如 Android 4.0)在 3.x 分支上仍然需要它。由于其正则表达式的结构,某些极端情况非常慢。目前这种情况已经发生了变化,并且速度提升非常显着

项目瘦身

有时你可能不需要 ajax,或者你更喜欢自主选择请求库,而将 jQuery 用于 CSSjQuery Places. sont difficiles à modifier et l'équipe n'a jamais vraiment trouvé la bonne solution, ils les conservent donc pour le moment et y répondront à l'avenir, d'autant plus que ces changements pourraient éventuellement nécessiter une nouvelle version majeure. [Recommandations de didacticiel associées : Tutoriel jq]

La version dite de maintenance fait référence à une version du logiciel qui corrige les vulnérabilités de sécurité ou les erreurs mineures sans modifier aucun composant principal ni ajouter de nouvelles fonctionnalités. Ils sont généralement numérotés par dixièmes ou centièmes pour les distinguer des versions majeures et, de manière générale, les ingénieurs logiciels termineront ce processus le plus rapidement possible sans sacrifier la qualité ou la fiabilité du codage.
Voici quelques améliorations dans jQuery 3.6.1 : 🎜🎜🎜Améliorations de l'infrastructure🎜🎜🎜L'équipe a fait beaucoup de choses dans cette version Travailler à la mise à jour de certaines infrastructures de test et de construction du projet, notamment en migrant 🎜CI🎜 de 🎜Travis CI🎜 vers 🎜GitHub Actions🎜, en testant sur 🎜Node 16🎜 au lieu de Node 15, en chargeant également leurs tests via 🎜https🎜 auditeurs comme l'ajout de tests plus précis pour les versions personnalisées. 🎜🎜🎜Ne perdez pas votre concentration🎜🎜🎜Malgré la difficulté, il reste encore Un correctif lié au focus. 🎜🎜🎜 Même après avoir supprimé le gestionnaire de focus jQuery, notre gestion d'événements spéciaux pour le focus est restée connectée, ce qui a interrompu tous les déclencheurs de focus manuels ultérieurs. Par exemple quand : 🎜rrreee🎜focus ne se déclenchera pas. 🎜🎜🎜Ignorer les erreurs dans addClass(array)🎜🎜🎜 Sans augmenter la taille, Ajout de la prise en charge 🎜 pour ignorer toutes les mauvaises valeurs dans le tableau transmis à addClassou removeClass. 🎜🎜Cela rend le code comme suit : 🎜rrreee🎜🎜Conforme à la spécification des valeurs de propriété CSS personnalisées🎜🎜🎜Maintenant, pour les valeurs de propriété CSS personnaliséestrimmed🎜, quelque chose de similaire avant --prop: value ; Premier et les espaces de fin dans la valeur sont conservés, renvoyant "value". 🎜🎜🎜Ajouter un script avec des commentaires HTML 🎜🎜🎜L'équipe a découvert un problème dans les expressions régulières qui étaient supprimées du script lors de l'ajout de commentaires HTML, et ont finalement été supprimées. parties du script exécutable dans certains cas extrêmes. Heureusement, S'appuyer davantage sur le navigateur 🎜 peut être la solution pour résoudre le problème. problème, mais l'équipe doit encore supprimer la partie CDATA pour 🎜IE🎜 dans la branche 3.x. Cela sera supprimé dans 🎜4.0🎜. 🎜🎜🎜Améliorations des performances pour jQuery.trim🎜🎜🎜Bien que jQuery.trim ait été supprimé sur la branche master au profit de String#trim natif (en préparation de la prochaine version majeure), mais il est toujours requis sur la branche 3.x pour certains navigateurs supportés par la branche (comme Android 4.0). En raison de sa structure d’expression régulière, certains cas extrêmes sont très lents. Cela a maintenant changé et les améliorations de vitesse sont remarquables 🎜. 🎜🎜🎜Projet minceur🎜🎜🎜Parfois, vous n'aurez peut-être pas besoin de 🎜ajax🎜, ou vous préférez choisir votre propre bibliothèque de requêtes et utiliser 🎜jQuery🎜 CSS est combiné avec des opérations de classe et utilisé dans les applications d'animation Web. Ainsi, en plus de la version standard de 🎜jQuery🎜 qui inclut les modules 🎜ajax🎜 et d'effets, l'équipe a également publié une version "🎜slim🎜" qui n'inclut pas ces modules. 🎜

Aujourd'hui, la taille de jQuery est rarement un problème de performances de chargement, la version allégée étant d'environ 6k (gzipped) plus petite que la version standard. Ces fichiers sont également disponibles sur les packages npm et les CDN :

code.jquery.com/jquery-3.6.…

code.jquery.com/jquery-3.6.…

Ces mises à jour sont disponibles en tant que npm et Version actuelle disponible sur Bower. Pour plus d'informations sur toutes les façons d'obtenir jQuery, visitez jquery.com/download/.

Continuez à utiliser JQ

Vous pouvez obtenir les fichiers à partir de jQuery CDN, ou créer un lien vers eux directement :

code.jquery.com/jquery-3.6.…

code.jquery. com/ jquery-3.6.…

Vous pouvez également obtenir cette version auprès de npm :

npm install jquery@3.6.1npm install jquery@3.6.1

写在最后

在单页面应用大行其道,各种新鲜框架层出不穷的时代,或许已经很少有人会再关注 jQuery,甚至唯恐避之不及,但它曾经的功绩仍不可磨灭,jQuery 致力于消除浏览器差异,简化了操作 DOM 的方法,让早期的开发者们能轻松实现动画、修改 CSS

Écrit à la fin

est très populaire dans les applications d'une seule page, chacune À une époque où de nouveaux frameworks émergent les uns après les autres, peu de gens peuvent plus prêter attention à jQuery

, voire l'éviter, mais ses réalisations passées sont toujours indélébiles
jQuery

s'engage à l'éliminer. différences entre les navigateurs et simplification des opérations

DOM
Cette méthode permet aux premiers développeurs d'implémenter facilement des animations, de modifier le CSS et d'autres opérations. Il n'est pas exagéré de dire qu'il s'agit de la bibliothèque la plus utilisée dans l'histoire de.

JavaScript. Le framework JS autrefois glorieux est en train de disparaître progressivement. Allons-nous assister à sa fin dans le futur, ou allons-nous le voir s'améliorer étape par étape puis revenir aux yeux du public ?

Enfin, je voudrais terminer par une phrase tirée des quelques commentaires ci-dessous lors de la sortie de 🎜jQuery 3.6.0🎜 : 🎜🎜🎜Merci beaucoup pour tout le travail acharné que vous faites pour maintenir et améliorer jQuery, car beaucoup d'entre nous nous utilisons toujours jQuery pour la plupart des projets exécutés en production. 🎜🎜🎜【Apprentissage recommandé : 🎜Tutoriel vidéo jQuery🎜, 🎜Vidéo web front-end🎜】🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer