Bikcraft Menu

Explorando as Novidades do jQuery 4.0.0 BETA: Potencializando a Web Moderna.

16 de fevereiro de 2024 | 0 Caio Vargas

Explorando as Novidades do jQuery 4.0.0 BETA: Potencializando a Web Moderna.

Explorando as Novidades do jQuery 4.0.0 BETA: Potencializando a Web Moderna

Descubra os Recursos Avançados e Melhorias na Mais Recente Versão do jQuery

jQuery 4.0.0 BETA!

Postado em por

jQuery 4.0.0 está em andamento há um longo hora, mas agora está pronto para uma versão beta! Há muito a cobrir, e a equipe está animada para vê-lo lançado. Temos correções de bugs, melhorias de desempenho e algumas alterações de interrupção. Afinal, removemos o suporte ao IE < 11! Ainda assim, esperamos que a interrupção seja mínima.

Muitas das mudanças breaking são aqueles que a equipe queria fazer há anos, mas poderia muito bem em um patch ou lançamento menor. O Weilitve cortou o código legado, removeu algumas APIs previamente depreciadas, removeu alguns parâmetros internos apenas para funções públicas que nunca foram documentadas e abandonou o suporte para alguns comportamentos “magic” que eram excessivamente complicados.

Publicaremos um guia de atualização abrangente antes do lançamento final, para descrever o código removido e como migrar. O plugin JQuery Migrate também estará pronto para ajudar. Por enquanto, experimente a versão beta e avise-nos se você encontrar algum problema.

Como de costume, o lançamento está disponível em nosso CDN e o gerenciador de pacotes npm. CDNs de terceiros não hospedarão esta versão beta, mas hospedarão a versão final 4.0.0 mais tarde. Aqui estão alguns destaques para o jQuery 4.0.0 beta.

Adeus IE<11

jQuery 4.0 deixa cair o suporte para IE 10 e mais velho. Alguns podem estar perguntando por que nós removemos o suporte para o IE 11. Planejamos remover o suporte em etapas e o próximo passo será lançado no jQuery 5.0. Por enquanto, começaremos removendo o código que suporta especificamente versões do IE com mais de 11 anos, dando-nos uma redução de tamanho de 867 bytes com gzip em um PR!

Também abandonamos o suporte para outros navegadores muito antigos, incluindo Edge Legacy, iOS <11, Firefox <65 e Android Browser. Nenhuma mudança deve ser necessária do seu lado. Se você precisar suportar qualquer um desses navegadores, basta ficar com o jQuery 3.x.

APIs depreciadas removidas

Essas funções foram descontinuadas para várias versões. Itilits tempo para remova-os agora que o wecotube chegou a um grande lançamento. Essas funções sempre foram feitas para serem internas ou aquelas que agora têm equivalentes nativos em todos os navegadores suportados. As funções removidas são:

push, sort, e splice removido

O protótipo jQuery há muito tempo tem métodos Array que não se comportam como qualquer outro método jQuery e sempre foram feitos apenas para uso interno. Esses métodos são push, sort, e splice. Nós mudamos nossos usos desses métodos para funções Array em vez do protótipo jQuery. Por exemplo, $elems.push( elem ) tornou-se [].push.call( $elems, elem ). Weilitre mencionando-o aqui no caso de haver plugins por aí que possam ter confiado nesses métodos.

focusin e focosout ordem do evento

Durante muito tempo, os navegadores não concordaram com a ordem dos eventos de foco e desfoque, que inclui focusin, focusout, focus, e blur. Finalmente, as versões mais recentes de todos os navegadores compatíveis com o jQuery 4.0 convergiram para uma ordem de evento comum. Infelizmente, difere da ordem consistente que o jQuery havia escolhido anos atrás, o que torna isso uma mudança radical. Pelo menos todo mundo está na mesma página agora!

a ordem de JQueryilits para todos os quatro eventos em versões anteriores foi:

1. focagem
2. desfoque
3. focusin
4. foco

Começando com jQuery 4.0, nós não substitui mais o comportamento nativo. Isso significa que todos os navegadores, exceto o IE, seguirão a especificação atual do W3C, que é:

1. desfoque
2. focagem
3. foco
4. focusin

Para aqueles que são curiosos, a especificação W3C definiu anteriormente uma ordem diferente:

1. focagem
2. focusin
3. desfoque
4. foco

Mas poucos pensaram que intuitivo e a especificação foi mudou em 2023 para corresponder ao que os navegadores já implementaram. Ironicamente, o único navegador a seguir a especificação antiga foi o Internet Explorer.

FormDatasuporte

jQuery.ajax tem adicionado suporte para dados binários, incluindo FormData. Anteriormente, os dados binários não eram um tipo de dados conhecido e foram convertidos em uma string. Esse comportamento pode ser desativado desativando a conversão de dados e manipulando os dados manualmente, mas decidimos fazer isso funcionar automaticamente. Isso é tecnicamente uma mudança radical, mas deve estar mais próximo do comportamento esperado.

Promoção JSONP automática removida

Anteriormente, jQuery.ajax com dataType: "json" com um retorno de chamada fornecido seria convertido para uma solicitação JSONP. Hoje, a maneira preferida de interagir com um backend entre domínios é com CORVOS, que funciona em todos os navegadores que o jQuery 4.0 suporta. Isso deve ajudar a evitar comportamentos inesperados caso um desenvolvedor não saiba que o código pode ser executado a partir de um domínio remoto com JSONP.

fonte do JQuery migrada para módulos ES

Foi um dia especial em que a fonte jQuery no main ramo foi migrado de AMD para Módulos ES. A fonte jQuery sempre foi publicada com os lançamentos jQuery no npm e no GitHub, mas não pôde ser importada diretamente como módulos sem RequireJS, que foi a ferramenta de construção da jQuery preferida. Desde então, mudamos para Rolar para empacotar o jQuery e executamos todos os testes nos módulos ES separadamente.

Tipos confiáveis e CSP

jQuery 4.0 adiciona suporte para Tipos confiáveis, garantindo que o HTML seja envolvido TrustedHTML pode ser usado como entrada para métodos de manipulação jQuery de uma maneira que não viole o require-trusted-types-for Diretiva Política de Segurança de Conteúdo.

Junto com isso, enquanto alguns pedidos AJAX já estavam usando <script> tags para manter atributos como crossdomain, temos desde que mudou a maioria das solicitações de script assíncrono para usar tags <script> para evitar erros de CSP causados pelo uso de scripts inline. Ainda existem alguns casos em que o XHR é usado para solicitações de script assíncrono, como quando o "headers" opção é passada (uso scriptAttrs em vez disso!), mas agora usamos um <script> tag sempre que possível.

Construção slim atualizada

A compilação fina ficou ainda menor no jQuery 4.0.0 com a remoção de Deferreds e Callbacks (agora abaixo de 20k bytes gzipped!). Os diferidos há muito tempo apoiam o Promessa A+ standard, então Promessas nativas podem ser usadas na maioria dos casos e estão disponíveis em todos os navegadores suportados pelo jQueryetts, exceto o IE11. Os Deferreds têm alguns recursos extras que as Promises nativas não suportam, mas a maior parte do uso pode ser migrada para os métodos Promise. Se você precisa suportar o IE11, it’ é melhor usar a compilação principal ou adicionar um polyfill para Promises nativas.

Download

Você pode obter os arquivos do jQuery CDN ou vinculá-los diretamente:

https://code.jquery.com/jquery-4.0.0-beta.js

https://code.jquery.com/jquery-4.0.0-beta.min.js

Você também pode obter esta versão de npm:

npm install jquery@4.0.0-beta

Construção fina

Às vezes, você não precisa de ajax ou prefere usar uma das muitas bibliotecas independentes que se concentram em solicitações de ajax. E, muitas vezes, é mais simples usar uma combinação de CSS e manipulação de classe para animações na web. Finalmente, todos os navegadores suportados pelo jQuery (, exceto o IE11 ), agora têm suporte para promessas nativas em geral, portanto, adiados e retornos de chamada não são mais necessários na maioria dos casos. Juntamente com a versão regular do jQuery, que inclui tudo, lançamos uma versão “ slim ” que exclui esses módulos. Atualmente, o tamanho do jQuery raramente é uma preocupação de desempenho de carga, mas a compilação fina é de cerca de 8k bytes com gzip menor que a versão normal. Esses arquivos também estão disponíveis no pacote npm e na CDN:

https://code.jquery.com/jquery-4.0.0-beta.slim.js

https://code.jquery.com/jquery-4.0.0-beta.slim.min.js

Essas atualizações já estão disponíveis como as versões atuais em npm e Bower. Informações sobre todas as maneiras de obter o jQuery estão disponíveis em https://jquery.com/download/. CDNs públicos recebem suas cópias hoje, por favor, dê-lhes alguns dias para postar os arquivos. Se você está ansioso para começar rapidamente, use os arquivos em nosso CDN até que eles tenham a chance de atualizar.

Obrigado

Obrigado a todos vocês que participaram desta versão enviando patches, relatando bugs ou testando, incluindo Alex, Ahmed S. El-Afi, fecore1, Fraser Dallas, Richard Gibson, Michaasty Go, Bebowski-Owczarek, Pierre Grimaud, Gabriela Gutierrez, Jonathan, Necmettin Karakaya, Anders Kaseorg, Wonseop Kim, Simon Legner, Shashanka Nataraj, Pat OroitCallaghan, Christian Oliff, Dimitri Papadopoulos Orfanos, Parque Wonhyoung, Bruno PIERRE, Ren Baoshuo, Beatriz Rezener, Sean Robinson, Ed Sanders, Timo Tijhof, Tom, Christian Wenzen, ygj6 e toda a equipe jQuery.

Weilitre em Mastodon!

jQuery agora tem sua própria conta Mastodon. A partir de agora, estaremos postando no Twitter e no Mastodon. Além disso, você pode estar interessado em seguir alguns dos membros da nossa equipe que têm contas Mastodon.

jQuery: https://social.lfx.dev/@jquery

mgol: https://hachyderm.io/@mgol

timmywil: https://hachyderm.io/@timmywil

Changelog

Changelog completo: 4.0.0-beta

Ajax

      • Donilit trata dados de matriz como binários (992a1911)
      • Permitir `ProcessData: true` even for binary data (ce264e07)
      • Suporta dados binários (incluindo FormData) (a7ed9a7b)
      • Suporte `beatheaders` for script transport, mesmo quando cross-domain (#5142, 6d136443)
      • Support ` ` success functions in ` ` ` jQuery.get`#4989, 74978b7e)
      • Scripts de execução automática Don’t, a menos que o dataType seja fornecido (#4822, 025da4dd)
      • Faça o responseJSON funcionar para solicitações JSONP de mesmo domínio erradas (68b4ec59)
      • Executar respostas de script de erro JSONP (#4771, a1e619b0)
      • Evite erros CSP no transporte de script para solicitações assíncronas (#3969, 07a8e4a1)
      • Solte a lógica de promoção automática json para jsonp (#1799, #3376, e7b3bc48)
      • Substitua s.contentType pelo valor do cabeçalho content-type, se houver (#4119, 7fb90a6b)
      • Deprecie os aliases de eventos AJAX, eventos/alias inline em obsoletos (23d53928)
      • Não execute scripts para respostas HTTP malsucedidas (#4250, 50871a5a)
      • Simplificar jQuery.ajaxSettings.xhr (#1967, abdc89ac)

Atributos

      • Raspar um par de bytes (b40a4807)
      • Donilit stringify atributos no setter (#4948, 4250b628)
      • Solte a assinatura `ToggleClass(boolean|undefined)` (#3388, a4421101)
      • Refactor val(): retorno de transporte de tira don’t, isolar soluções alternativas do IE (ff281991)
      • Don’t definir o tipo de gancho attr em tudo fora do IE (9e66fe9a)

construir

      • configurar análise de digitalização de código periódica (39c5778c)

Construir

      • migrar autores grunt para um script personalizado (af79c999)
      • Bump segue redirecionamentos de 1.15.1 para 1.15.4 (56139394)
      • Ações de bump/setup-node e github/codeql-action (99151d7a)
      • Reformatar arquivos Yaml de fluxo de trabalho do GitHub (c98597ea)
      • Bump @babel/traverse e múltiplas ações (fb0cc272)
      • Donilit executa fluxos de trabalho de push de CI para ramificações dependentes (635cb152)
      • Atualizar pacotes relacionados ao ESLint, corrigir erros de linting (f47c6a83)
      • Execute o pré-teste antes do teste:* npm scripts (1ad66aeb)
      • classificar ramificações em compare_size; última execução última (a7fa303f)
      • executar pré-teste no script jenkins (cb763072)
      • corrigir compilações inconsistentes no Node 20 (7ef9099d)
      • adicione SHAs de confirmação e últimas execuções para comparações (09972bcc)
      • adicionar novos arquivos de fábrica para dist eslint (79223841)
      • Qs da bomba, socket.io-parser, socket.io & json5 (b923047d)
      • migre a maioria das tarefas grunhidas do grunhido (2bdecf8b)
      • Acções de colisão/checkout, acções/setup-node & github/codeql-action (42e50f8c)
      • Atualizar a entrada de mailmap para Krinkle (699bcd39)
      • substitua CRLF por LF durante minify (48cc402a)
      • Adicionar ` ` package.json, export slim & esm builds (#4592, 8be4c0e4)
      • Mudar de forma Terser para SWC para minificação JS (#5286) (#5285, e2421875)
      • Certifique-se de que os arquivos `: `.cjs` & `.mjs` files use UNIX line endings well (198b41c8)
      • alternar email preferido para timmywil (2b6b5e0a)
      • Bump github/codeql-ação e ações/checkout (4a13266e)
      • Solte módulos AMD individuais (5701957b)
      • Referência GitHub Actions by commit SHAs (#5266, 784b9ba6)
      • Mude o minifier de UglifyJS para Terser (27303c6b)
      • Faça a tarefa `:dev` não lint a pasta `/` (44906a83)
      • Teste no Node.js 20, pare de testar no Node.js 14 e 19 (6616acff)
      • Instale dependências do Playwright somente quando necessário (e77bd9d6)
      • Ações de colisão/nó de configuração de 3.5.1 a 3.6.0 (7e7bd062)
      • Execute testes de navegador do GitHub Action no Playwright WebKit (b02a257f)
      • Migrar middleware-mockserver para JS moderno (ce90a484)
      • remova o pacote Insight obsoleto de compilações personalizadas (c66d4700)
      • Limitar permissões para fluxos de trabalho do GitHub (c909d6b1)
      • Teste no Node.js 18 e 19, pare de testar no Node 12 (f62d8e21)
      • Ações de colisão/nó de configuração de 3.5.0 a 3.5.1 (0208224b)
      • Atualizar Grunt de 1.4.1 para 1.5.3 (aa231cd2)
      • Ações de colisão/nó de configuração de 3.4.1 a 3.5.0 (25400750)
      • Atualizar ações do GitHub (52f452b2)
      • Adicionar dependabot.yml config (Ações do GitHub) (3f8bb2a4)
      • Teste no Node 17, atualize os pacotes Grunt & `-*` (2525cffc)
      • Separe a etapa de instalação da execução de testes no GitHub Actions (eef97250)
      • remover travis.yml e travis menções do núcleo (#4983) (5f4d449a)
      • Migrar CI para ações do GitHub (e23190e6)
      • Atualizar ESLint & eslint-plugin-import, corrigindo a compilação (9735edd5)
      • Teste no Node.js 16 em vez de 15 (0f623fdc)
      • Pegue o core-js-bundle do diretório externo também (345cd22e)
      • Restaurar o diretório externo (a684e6b)
      • Renomear mestre para main em todo o repositório (8ae477a4)
      • Teste no Node.js 15 (6984d174)
      • Excluir explicitamente o módulo de fila da compilação slim (a503c691)
      • Faça a regra ESLint de importação/módulos não usados funcionar no WebStorm (8612018d)
      • Anexar caminhos .eslintignore aos caminhos grunt eslint (a22b43ba)
      • Use a ortografia dos EUA de “favor” (fa0058af)
      • Corrigir commitpor favor, config husky (#4735, 3a1b338a)
      • Atualizar dependências (b5028669)
      • Evento: Certifique-se de que todas as exportações de módulos de origem’ são utilizadas (#4648) (40c3abd0)
      • Atualizar eslint-config-jquery, corrigir violações de linting (ef4d6ca6)
      • Acompanhamentos após a introdução de módulos ES compilados via Rollup (55cd3a44)
      • Corrigir recuos de código com base no jQuery Style Guide (3d62d570)
      • Reduzir o comentário de cabeçalho de compilação slim & jQuery.fn.jquery (812b4a1a)
      • Mover ESLint max-len disable-directive para dist/.eslintrc.json (34296ec5)
      • Teste no Node.js 14, pare de testar no Node.js 8 e 13 (88eb22e0)
      • Ativar relatórioUnusedDisableDirectives no ESLint (46f9810b)
      • Resolver avisos de configuração do Travis (5b94a4f8)
      • Ativar a regra ESLint one-var para declarações var no código do navegador (4a7fc854)
      • Adicionar Christian Oliff a .mailmap e AUTHORS.txt (721744a9)
      • Lint o arquivo jQuery minificado também – a Gruntfile fix (#3075, 338f1fc7)
      • Lint o arquivo jQuery minificado também (#3075, 89a18de6)
      • Adicionar nomes intuitivos para trabalhos Travis (e1fab109)
      • Faça o modo dev funcionar no Karma novamente, sirva arquivos de origem do disco (437f389a)
      • Testes: Corrigir testes de compilação personalizados, verificar no Travis (0f780ba7)
      • Criar um ` custom:slim` for the Slim build (#4578) (9b9ed469)
      • Faça o Karma funcionar no modo de módulos ES (341c6d1b)
      • Converta automaticamente fontes para AMD (f37c2e51)
      • Corrigir a compilação do Windows (#4548, 9fd2fa53)
      • Exigir extensões para importações ES6, impedir ciclos de importação (44ac8c85)
      • Corrigir o caminho de importação para serializar.js de ajax.js (07532014)
      • Executar testes no Travis apenas em navegadores definidos na configuração (bcbcdd2b)
      • Execute testes no Firefox ESR também (2d5ad6d2)
      • Execute testes no Node.js 13 além de 8, 10 e 12 (830976e6)
      • Execute testes no Travis no FirefoxHeadless também (584835e6)
      • Exigir modo estrito em scripts Node.js via ESLint (bbad821c)
      • Suporte jquery-release –dry-run flag (d7d0b52b)
      • Pare de copiar src/core.js para dist na versão (#4489, 9a4d9806)
      • Remova o diretório externo, lido diretamente de node_modules (d7e64190)
      • ESLint: proibir parâmetros de função não utilizados (438b1a3e)
      • Corrigir o regex parsing AMD var-modules (#4389) (9ec09c3b)
      • Corrigir dependências da AMD no curCSS (b220f6df)
      • Teste no Node.js 12, pare de testar no Node.js 6 e 11 (b8d47128)
      • Corrigir referência jQuery não resolvida no finalPropName (#4358, 87403058)
      • Atualize o Sizzle de 2.3.3 a 2.3.4 (#1756, #4170, #4249, 0b2c36ad)
      • Atualize a versão principal para 4.0.0-pre (c4f2fa2f)
      • Atualize o Sinon de 2.3.7 a 7.3.1, outras atualizações (fea7a2a3)

Principal

      • Adicione mais informações sobre exportações nomeadas (5f869590)
      • Simplifique a redução do suporte ao navegador de postagem de código (93ca49e6)
      • Mova a fábrica para separar as exportações (46f6e3da)
      • Use exportações nomeadas em `src /` (#5262, f75daab0)
      • Corrija a regressão em jQuery.text ( ) em objetos HTMLDocument (#5264, a75d6b52)
      • Seletor: Mova o jQuery.contém do seletor para o módulo principal (024d8719)
      • Solte o parâmetro raiz do jQuery.fn.init (d2436df3)
      • Não confie na presença de emenda na entrada (9c6f64c7)
      • Manipulação: adicione suporte básico ao TrustedHTML (#4409, de5398a6)
      • Relatar erros do navegador no parseXML (#4784, 89697325)
      • Faça com que o jQuery.isXMLDoc aceite a entrada de falsidade (#4782, fd421097)
      • Solte o suporte ao Edge Legacy ( ou seja, Microsoft Edge não cromado ) (#4568, e35fb62d)
      • Disparar script iframe em seu contexto, adicionar doc param em globalEval (#4518, 4592595b)
      • Exclua retornos de chamada e módulos diferidos na compilação slim também (fbc44f52)
      • Migrar de módulos AMD para ES ???? (d0ce00cd)
      • Use Array.prototype.flat onde suportado (#4320, 9df4f1de)
      • Remova cópias privadas de push, sort & splice do protótipo jQuery (b59107f5)
      • Implementar .even() & .odd() para substituir POS :even & :odd (78420d42)
      • Depreciar jQuery.trim (#4363, 5ea59460)
      • Remova os testes de suporte específicos do IE, confie em document.documentMode (#4386, 3527a384)
      • Suporte para IE <11, iOS <11, Firefox <65, Android Browser & PhantomJS (#3950, #4299, cf84696f)
      • Remover APIs jQuery obsoletas (#4056, 58f0c00b)

CSS

      • Corrigir teste de suporte confiávelTrDimensions para iframes inicialmente ocultos (b1e66a5f)
      • Seletor: Alinhe com 3.x, remova o wrapper ` ` 3.x53cf7244)
      • Faça o teste de suporte confiável do TrDimensions funcionar com o Bootstrap CSS (#5270, 65b85031)
      • Faça `Height( true )`, etc. inclua margens negativas (#3982, bce13b72)
      • Retornar `beinfindefined` for whitespace-only CSS variable values (#5120) (7eb00196)
      • O Donilit apara espaços em branco de propriedade personalizada indefinida (#5105, ed306c02)
      • Ignorar valores de falsificação em `Class( array )`, comprimir código (#4998, a338b407)
      • Justificar o uso de rtrim em valores de propriedade CSS (655c0ed5)
      • Aparar espaços em branco em torno de valores de Propriedades Personalizadas CSS (#4926, efadfe99)
      • Inclua métodos `block, `block & ` jQuery slim build (297d18dd)
      • Remova o gancho CSS de opacidade (865469f5)
      • Solução alternativa buggy getComputedStyle em linhas de tabela no IE/Edge (#4490, 26415e08)
      • Don’t adiciona automaticamente “px” a propriedades com algumas exceções (#2795, 00a9c2e5)

Dados

      • Refator para reduzir o tamanho (805cdb43)
      • Evento:Manipulação: Evitar colisões com Object.prototype (#3256, 9d76c0b1)
      • Dados separados & css/efeitos camelCase implementações (#3355, 8fae2120)

Diferido

      • Renomeie ` ` ` ` ` ` ` GetStackHook` (#5201, 258ca1ec)
      • Respeite os mapas de origem em jQuery.Deferred.exceptionHook (#3179, 0b9c5037)
      • Renomear mestre para primário (a32cf632)

Depreciado

      • Defina `.hover()` usando métodos não depreciados (fd6ffc5e)
      • Remover jQuery.trim (0b676ae1)
      • Corrigir a ordem dos parâmetros AMD (f810080e)

Dimensões

      • Adicionar deslocamento prop fallback para FF para dimensões TR não confiáveis (#4529, 3bbbc111)

Docs

      • Corrigir links de módulo no pacote README (ace646f6)
      • atualizar tarefa de relógio em CONTRIBUINDO.md (77d6ad71)
      • Corrigir erros de digitação encontrados por codespell (620870a1)
      • remover crachá gitter obsoleto de readme (67cb1af7)
      • Remova a secção “Grunt build” do modelo PR (988a5684)
      • Remover crachá obsoleto de README (bcd9c2bc)
      • Atualizar o README do pacote publicado (edccabf1)
      • Remover git.io de um comentário do GitHub Actions (016872ff)
      • Atualizar o site do webpack no README (01819bc3)
      • adicionar link para patchwelcome e ajudar os problemas desejados (924b7ce8)
      • adicionar link para visualizar as novas CLAs (683ceb8f)
      • Corrigir referências incorretas de `trac-NUMBER` (eb9ceb2f)
      • remover links expirados da fonte jquery antiga (#4997) (ed066ac7)
      • Remover links para o arquivo da Web da fonte (#4981, e24f2dcf)
      • Substitua as referências de problema de rastreamento `# NUMBER` por `trac-NUMBER` (5d5ea015)
      • Atualize o URL para a versão mais recente do jQuery em CONTRIBUTING.md (9bdb16cd)
      • Remova a caixa de seleção CLA no modelo de solicitação de tração (e1248931)
      • atualize irc para Libera e corrija o link morto LAMP (175db73e)
      • Atualize questões relatadas com frequência no modelo de problema do GitHub (7a6fae6a)
      • Alterar a Fundação JS menciona a OpenJS Foundation (11611967)
      • adicione SECURITY.md, mostre o endereço de e-mail de segurança (2ffe54ca)
      • Corrigir erros de digitação (1a7332ce)
      • Atualize o link para o repositório jsdom (a62309e0)
      • Use https para hiperlinks em README (73415da2)
      • Remova uma menção ao módulo event / alias.js do README (3edfa1bc)
      • Atualize links para problemas do EdgeHTML para acessar o Web Archive (1dad1185)
      • direcione os usuários aos documentos do GitHub para clonar o repo (f1c16de2)
      • Altere o OS X para macOS em README (5a3e0664)
      • Atualize a maioria dos URLs para HTTPS (f09d9210)
      • Converter link para Homebrew de HTTP para HTTPS (e0022f23)

Efeito

      • Corrija uma declaração condicional desnecessária em .stop ( ) (#4374, 110802c7)

Efeitos

Evento

      • Evite colisões entre jQuery.event.special e Object.prototype (bcaeb000)
      • Simplifique a verificação de dados salvos em alavancagemNative (dfe212d5)
      • Faça o trigger(focus/blur/click) funcionar com manipuladores nativos (#5015, 6ad3651d)
      • Simular foco/desfoque no IE via focusin/focusout (#4856, #4859, #4950, ce60d318)
      • Donilit break focus triggering after `.on(focus).off(focus)` (#4867, e539bac7)
      • Faça com que o foco seja acionado novamente e não foque o elemento original de volta (#4382, dbcffb39)
      • Não travar se um elemento for removido em desfoque (#4417, 5c2d0870)
      • Remova o evento.whim shim (#3235, 1a5fff4c)
      • remova jQuery.event.global (18db8717)
      • Anexe apenas eventos a objetos que aceitam dados – para real (#4397, d5c505e3)
      • Pare de apertar eventos de foco e foco (#4300, 8a741376)
      • Evite alavancagemNativo de registrar manipuladores fictícios duplicados (eb6c0a7c)
      • Corrigir o manuseio de vários eventos de foco assíncrono (#4350, ddfa8376)

Manipulação

      • Generalize um teste para apoiar o IE (88690ebf)
      • Suporte $el.html(selfRemovingScript) (#5378) (#5377, 937923d9)
      • Extraia domManip para um arquivo separado (ee6e8740)
      • Remova comentários HTML de scripts (#4904, 2f8f39e4)
      • Respeite o atributo crossorigin do script na manipulação do DOM (#4542, 15ae3614)
      • Evite concatenar strings em buildFragment (9c98e4e8)
      • Faça do jQuery.htmlPrefilter uma função de identidade (90fed4b4)
      • Seletor: Use o nodeName util sempre que possível para salvar o tamanho (4504fc3d)

Liberar

      • use buildDefaultFiles diretamente e passe a versão (b507c864)
      • copie a pasta dist-module também (63767650)
      • somente arquivos versionados publicados para cdn (3a0ca684)
      • remover scripts e deps de dev do dist package.json (7eac932d)
      • atualizar o comando build em Release.generateArtifacts (3b963a21)
      • adicionar suporte para somas md5 no Windows (f088c366)
      • remova a necessidade de instalar o grunt globalmente (b2bbaa36)
      • dependências de atualização de versão (967af732)
      • Remover uma dependência de giz não utilizada (bfb6897c)
      • Use um dispositivo elétrico README no repositório (358b769a)
      • Atualizar AUTHORS.txt (1b74660f)
      • atualizar AUTHORS.txt (cf9fe0f6)

Seletor

      • Faça o módulo `.js` depend on ` ` ` ` ` ifibelector.js`#5379, e06ff088)
      • Elimine as depenências ` ` ` ` ` ` `e8b7db4b)
      • Re-expor jQuery.find.{tokenize,select,compile,setDocument} (#5259, 338de359)
      • Pare de confiar em CSS.supports( “selector(...)” ) (#5194, 68aa2ef7)
      • Backport jQuery lógica de contexto de seleção para seletor-nativo (#5185, 2e644e84)
      • Faça as listas de seletores funcionarem novamente com o ` ` (#5177, 09d988b7)
      • Implementar o método acorrentável ∆UniqueSort` (#5166, 5266f23c)
      • Re-introduzir selector-native.js (4c1171f2)
      • Manipulação: Corrigir DOM manip dentro do conteúdo do modelo (#5147, 3299236c)
      • Drop suporte para pseudos legados, teste pseudo personalizados (8c7da22c)
      • Use jQuery `:has` if ` ` ` ` if ` ` if ` CSS.supports(selector(..))#5098, d153c375)
      • Remover a solução alternativa “a:enabled” para o Chrome <=77 (c1ee33ad)
      • Faça os seletores de atributos vazios funcionarem no IE novamente (#4435, 05184cc4)
      • Use comparações rasas de documentos em uniqueSort (#4441, 15750b0a)
      • Adicione um teste para jogar em seletores inválidos pós-vírgula (6eee5f7f)
      • Faça seletores com combinadores líderes usarem qSA novamente (ed66d5a2)
      • Use comparações rasas de documentos para evitar falhas no IE/Edge (#4441, aa6344ba)
      • reduza o tamanho, simplifique setDocument (29a9544a)
      • Alavancar a pseudo-classe :scope sempre que possível (#4453, df6a7f7f)
      • Trazer de volta querySelectorTodo o uso de atalho (cef4b731)
      • Inline Sizzle no módulo seletor (47835965)
      • Testes de porta Sizzle para jQuery (79b74e04)

Suporte

      • certifique-se de que a exibição esteja definida para bloquear para o div de suporte (#4832, 09f25436)

Testes

      • Desactivar o teste “:lang respeitos escapou backslashes” (#5271, 62b9a258)
      • Indique Chrome 112 e Safari 16.4 passar o teste de suporte cssHas (89ef81f8)
      • Teste corretamente os aliases de eventos obsoletos do AJAX (cff28998)
      • Indicar Firefox 106+ passa o teste `SupportsSelector` (716130e0)
      • Remover uma solução alternativa para um problema de análise XML do Firefox (e7ffe1f1)
      • Corrigir o link para o arquivo CSS QUnit (8cf39b78)
      • Excluir testes baseados em sinalizadores de compilação, não presença de API (#5069, fae5fee8)
      • Solução alternativa a um bug de análise XML no Firefox (af1cd6f2)
      • bloquear cores versão para 1.4.0 (9603b3c8)
      • Ignorar os testes ETag AJAX no TestSwarm (00c060d1)
      • Permitir que o statusText seja “success” nos testes AJAX (19ced963)
      • Torne o tempo limite do navegador Karma maior do que o QUnit (4fd6912b)
      • Don’t remove csp.log na ação cspClean de mock.php (1019074f)
      • Carregue o ouvinte TestSwarm via HTTPS (d225639a)
      • Mudar a imagem de fundo do ficheiro online para o local 1×1.jpg (482f8462)
      • Tira caracteres de parâmetro de retorno de chamada atípicos do mock.php (a7027463)
      • Faça com que mais testes sejam executados nativamente no Chrome e Firefox (50e8e846)
      • Corrigir testes para não auto-executar scripts sem dataType (d38528b1)
      • Reconhecer retornos de chamada com pontos no servidor simulado Node.js (df6858df)
      • Ignorar o “jQuery.ajax() no teste de descarreg” no Safari (c18dc496)
      • Remover uma variável local não utilizada (82b87f6f)
      • Remover as referências jQuery.cache obsoletas restantes (d96111e1)
      • Falhas na solução alternativa em testes XSS recentes no iOS 8 – 12 (11066a9e)
      • Adicionar testes para problemas XSS de manipulação corrigidos recentemente (dc06d68b)
      • Use apenas um manipulador de focusin/out por janela e documento correspondentes (9b732043)
      • Corrigir a flacidez no teste “jQuery.ajax() – JSONP – Same Domain” (7b0864d0)
      • Passe um número de chamadas necessárias doed() para assert.async() (364476c3)
      • Remover testes de dados jQuery obsoletos (eb35be52)
      • Ignorar uma “width/height numa linha de tabela com o teste phantom borders” no Firefox (a612733b)
      • Teste de Donilit XHR síncrono na descarga no Chrome (323575fb)
      • Pare de usar jQuery.find em testes (1d624c10)
      • Mudanças de porta do Sizzle (ac5f7cd8)
      • Corrigir um comentário em testinit.js (7bdf307b)
      • atualize o npo.js e inclua uma fonte não minimizada (b334ce77)
      • Restringir um fallback de teste de evento ao TestSwarm (bde53edc)
      • Corrigir o novo teste de focusin/focusout no IE (6f2fae7c)
      • Corrigir o método de inclusão de polyfill core-js (2e4b79ab)

Percorrendo

      • Corrigir `()` on `4<object>` with children in IE (ccbd6b93)
      • Corrigir `()` on `4<object>` with children (#4384, 4d865d96)