Incompatibilidades entre versões do jQuery 1.2.6 e 1.3.2

O site / blog Learning jQuery publicou um post “faça um upgrade dos seus scripts para jQuery 1.3 em 3 passos”, achei interessante, vou traduzir parte do post aqui.

Os seletores [@attribute]

A principal diferença, o que mais está dando problema de incompatibilidade nessa troca de versão é a sintaxe do selector [@attribute] que desde a versão 1.1.4 (agosto de 2007) entrou em desuso, mas até a 1.2.6 ele ainda funcionava, dessa vez tiraram fora mesmo, mas muitos sites e muito plugins ainda utilizavam os seletores assim. veja mais tidbits E pra alterar, corrigir o problema, é bem simples, basta remover o @

Exemplo:

jQuery anterior a 1.1.4

$('a[@rel="excluir"]
$('input[@name^="telefone"]

Versão atual do jQuery

$('a[rel="excluir"]
$('input[name^="telefone"]

:visible em visibility e display

Nessa nova versão :visible trabalha de acordo com a propriedade display do css e não mais com visibility

Exemplo 1:

Considere a div abaixo:

<div id="exemplo" style="display:none">
 Tidbits
</div>

Na Versão 1.2.6 obtemos true com .is(‘:visible’) pois ele considerava somento a propriedade visitibility do css, já na versão 1.3.2. obtemos false

Versão 1.2.6
$(‘#exemplo’).is(‘:visible’) = true

Versão 1.3.2
$(‘#exemplo’).is(‘:visible’) = false

Exemplo 2:

Considere a div abaixo:

<div id="exemplo2" style="visibility:hidden">
 Tidbits
</div>

Na Versão 1.2.6 obtemos false com .is(‘:visible’) pois ele considerava somento a propriedade visitibility do css, já na versão 1.3.2. obtemos true

Versão 1.2.6
$(‘#exemplo’).is(‘:visible’) = false

Versão 1.3.2
$(‘#exemplo’).is(‘:visible’) = true

A terceira mudança é na hora de escrever um seletor customizado, agora não é necessário retornar uma string, como era feito até então.

Quem quiser ler a matéria original, veja no Learning jQuery .

[]s

3 thoughts on “Incompatibilidades entre versões do jQuery 1.2.6 e 1.3.2

Leave a Reply

Your email address will not be published. Required fields are marked *