1년이 지난 후 jQuery가 새 버전 3.6.1을 다시 출시했습니다. 아직도 JQ를 사용하고 계시나요? jQuery 3.6.1의 몇 가지 개선 사항을 살펴보겠습니다. 도움이 되기를 바랍니다.
지난 주(2022-08-26) jQuery 3.6.1 유지 관리 버전이 방금 업데이트되었습니다. 마지막 버전이 출시된 지 1년 5개월이 지났습니다. 주로 focus
& blur
)的问题以及一些难以捉摸的边缘情况,可能是历史原因,jQuery 中与焦点有关的地方都很难改变,团队从未完全正确地修复,所以他们暂时保留这些内容,并将在未来解决,特别是因为这些更改最终可能需要发布一个新的主要版本。【相关教程推荐:jq教程】
所谓维护版本是指在不更改任何核心组件或添加新功能的情况下纠正安全漏洞或小错误的软件版本。它们通常以十分之一或百分之一来编号,以区别于主要版本,一般来说,软件工程师会尽可能快地完成这个过程,并且不会牺牲编码质量或可靠性。
以下是 jQuery 3.6.1 的一些改进:
基础设施改进
在这个版本中团队做了很多工作来更新项目的一些测试和构建基础设施,包括将 CI 从 Travis 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 用于 CSS
jQuery 장소의 초점 관련 문제로 인해 초점 및 초점 흐림(focus
및 blur
) 문제와 일부 파악하기 어려운 경우를 해결하는 것을 고려합니다. 변경하기 어렵고 팀에서 올바른 수정 사항을 얻지 못했기 때문에 지금은 이를 유지하고 있으며 특히 이러한 변경 사항에는 결국 새로운 주요 릴리스가 필요할 수 있으므로 향후 문제를 해결할 것입니다. [관련 튜토리얼 추천 : jq tutorial]
유지보수 버전이란 핵심 구성 요소를 변경하거나 새로운 기능을 추가하지 않고도 보안 취약점이나 사소한 오류를 수정하는 소프트웨어 버전을 말합니다. 주요 릴리스와 구별하기 위해 일반적으로 10분의 1 또는 100분의 1로 번호가 지정되며 일반적으로 소프트웨어 엔지니어는 코딩 품질이나 신뢰성을 희생하지 않고 가능한 한 빨리 이 프로세스를 완료합니다.jQuery 3.6.1의 몇 가지 개선 사항은 다음과 같습니다. 🎜🎜🎜인프라 개선🎜🎜🎜팀은 이 버전에서 많은 작업을 수행했습니다. 🎜Travis CI🎜에서 🎜GitHub Actions🎜로 🎜CI🎜 마이그레이션, Node 15 대신 🎜Node 16🎜에서 테스트, 🎜https🎜 리스너를 통해 테스트 로드 등을 포함하여 일부 프로젝트 테스트 및 인프라 구축을 업데이트합니다. 사용자 정의 빌드에 대한 보다 정확한 테스트를 추가하는 것입니다. 🎜🎜🎜초점을 잃지 마세요🎜🎜🎜어려움에도 불구하고 포커스 관련 수정 사항입니다. 🎜🎜🎜 jQuery 포커스 핸들러를 제거한 후에도 포커스에 대한 특수 이벤트 처리가 연결된 상태로 유지되어 후속 수동 포커스 트리거가 중단되었습니다. 예를 들어 🎜rrreee🎜
focus
가 실행되지 않는 경우. 🎜🎜🎜addClass(array)의 오류 건너뛰기🎜🎜🎜 크기를 늘리지 않고 addClass
또는 removeClass
에 전달된 배열의 잘못된 값을 건너뛰는 🎜 지원이 추가되었습니다. 🎜🎜이 코드는 다음과 같습니다. 🎜rrreee🎜🎜사용자 정의 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🎜 CSS
와 클래스 연산을 결합한 웹 애니메이션 응용 프로그램입니다. 그래서 팀에서는 🎜ajax🎜 및 효과 모듈이 포함된 일반 🎜jQuery🎜 버전 외에도 이러한 모듈이 포함되지 않은 "🎜slim🎜" 버전도 출시했습니다. 🎜요즘 jQuery의 크기는 로드 성능 문제로 거의 발생하지 않으며, 라이트 버전은 일반 버전보다 약 6k(gzipped) 정도 작습니다. 이 파일은 npm 패키지 및 CDN에서도 사용할 수 있습니다:
이러한 업데이트는 npm 및 Bower에서 현재 버전을 사용할 수 있습니다. jQuery를 얻는 모든 방법에 대한 자세한 내용을 보려면 jquery.com/download/를 방문하세요.
계속 JQ
를 사용하세요. jQuery CDN에서 파일을 가져오거나 직접 링크할 수 있습니다:
code.jquery. com/ jquery-3.6.…
npm에서도 이 버전을 얻을 수 있습니다:
npm install jquery@3.6.1
npm install jquery@3.6.1
写在最后
在单页面应用大行其道,各种新鲜框架层出不穷的时代,或许已经很少有人会再关注 jQuery,甚至唯恐避之不及,但它曾经的功绩仍不可磨灭,jQuery 致力于消除浏览器差异,简化了操作 DOM 的方法,让早期的开发者们能轻松实现动画、修改 CSS
는 매우 인기가 있습니다. 단일 페이지 애플리케이션에서 각각 새로운 프레임워크가 속속 등장하는 시대에 더 이상 jQuery
에 관심을 두거나 심지어 기피하는 사람은 거의 없지만,jQuery이 방법을 사용하면 초기 개발자가 쉽게 애니메이션을 구현하고의 과거 성과는 여전히 지울 수 없습니다. 브라우저 차이점 및 작업 단순화
DOM
CSS
및 기타 작업을 수정할 수 있으며 역사상 가장 널리 사용되는 라이브러리라고 해도 과언이 아닙니다. 자바스크립트. 한때 영광스러웠던 JS 프레임워크는 이제 점차 사라지고 있습니다. 우리는 미래에 그 종말을 맞이하게 될까요, 아니면 단계적으로 개선되어 다시 대중의 주목을 받게 될까요?
마지막으로 🎜jQuery 3.6.0🎜이 출시되었을 때 아래 몇 가지 댓글에 나온 문장으로 마무리하고 싶습니다. 🎜🎜🎜jQuery를 유지하고 개선하기 위해 애쓰신 모든 노고에 감사드립니다. 프로덕션 환경에서 실행되는 대부분의 프로젝트에서는 여전히 jQuery에 의존하고 있습니다. 🎜🎜🎜【추천 학습: 🎜jQuery 동영상 튜토리얼🎜, 🎜웹 프론트엔드 동영상🎜】🎜위 내용은 jQuery는 새 버전 3.6.1을 출시합니다. 개선 사항을 확인하세요!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!