Liberada a versão 1.7 do jQuery

Lançada dia 3 de novembro de 2011, a nova versão não teve muita adição de métodos, mas teve mudanças estruturais.

Apesar de não ter lido todo o release notes e não ter testado todas as funções adicionadas, resolvi escrever esse post para compartilhar a minha primeira impressão (até porque só tenho ela mesmo até o momento).

Métodos para manipulação de eventos foram adicionados: on e off, serve basicamente para fazer um bind e unbind. Nas versão anteriores, isso também era possível , em alguns casos de forma até mais simples. Veja alguns exemplos:

$('a').bind('click', myHandler);
$('a').on('click', myHandler);
$('form').bind('submit', { val: 42 }, fn);
$('form').on('submit', { val: 42 }, fn);
$(window).unbind('scroll.myPlugin');
$(window).off('scroll.myPlugin');
$('.comment').delegate('a.add', 'click', addNew);
$('.comment').on('click', 'a.add', addNew);
$('.dialog').undelegate('a', 'click.myDlg');
$('.dialog').off('click.myDlg', 'a');
$('a').live('click', fn);
$(document).on('click', 'a', fn);
$('a').die('click');
$(document).off('click', 'a');

 Estranhei a adição desses métodos, já que o jQuery tem como slogan “write less, do more” e não vi redução alguma de escrita de código. Ao ler mais um pouco o release notes, verifiquei que a grande vantagem desses métodos estava relacionada com o desempenho. Veja o comparativo entre implementações:

 

Melhoraram implementações voltadas para HTML5 no IE (6, 7 e 8).

Agora os métodos .toggle guardam informações dos objetos, recuperam propriedades deixando a animação mais simples de implementar.

A nova versão suporta Asynchronous Module Definition (AMD). Nunca vi isso, vou estudar e apresentar algo prático no próximo post!

Os objetos deferred adicionaram progress handlers e métodos de notificação, ainda não testei o progress mas acho que foi uma atualização importante, pois, já precisei.

Outra atualização que eu não testei foi o isNumeric(), percebi que removeram o isNaN, assim que testar a atualização e ler mais sobre o isNumeric(), detalharei mais no próximo post.

Como prometi algumas coisas para o próximo post, vou facilitar e agrupar as minhas promessas:

  • Detalhar mais o release notes da versão 1.7;
  • Explicar Asynchronous Module Definition (AMD);
  • Comparar o isNumeric e o isNaN.

Deixe um comentário