Link copiato negli appunti
Pochi giorni fa è stata rilasciata la prima beta nella nuova major release della più usata libreria JavaScript, jQuery.
Le novità sono molte a partire da nuove API per gli eventi, compatibilità con i loader AMD, migliore supporto per HTML5, altro lavoro sulla gestione degli attributi, eccetera. Vediamo insieme le aggiunte più interessanti.
- Nuovi metodi
on()
eoff()
; questi nuovi metodi vanno a mettere un po' di ordine nella stratificazione che nel tempo si è creata nei metodi a disposizione per la gestione degli eventi: bind/unbind, delegate/undelegate, live/die. Alla fine ci si è resi conto che si era venuta a creare un po' di confusione. L'approccio adesso sarà quello di usare soltanto i due nuovi metodi, che si specializzeranno a seconda dei parametri che verranno loro passati. Se per esempio allaon()
verrà passato un selettore, allora jQuery userà la logica dell'attuale metododelegate
, mentre se non verrà passato userà la semplicebind
. àˆ presumibile che tra qualche versione gli altri metodi vengano abbandonati; - Supporto per Asynchronous Module Definition (per saperne di più); sono state effettuate delle modifiche interne, tali per cui adesso jQuery può essere caricato in maniera sicura tramite i cosiddetti "loader" (come RequireJS). Il problema era che, vista la popolarità della libreria, può capitare per errore di caricarla due volte. Il nuovo sistema fa in modo di controllare che questo non avvenga;
- Miglior supporto HTML5; jQuery non permette di creare elementi HTML per i browser che non li supportano (funzionalità offerta per esempio da HTML5Shiv) però con la 1.7 viene effettuato correttamente il parsing degli elementi HTML5 prima che questi siano passati al metodo innerHTML. Inoltre è stato migliorato il supporto nelle operazione di cloning dei nodi, che per l'HTML5 ha bisogno di particolare attenzioni cross browser.
Vi lascio dunque con il puntatore all'annuncio ufficiale del rilascio, ma vi consiglio anche di dare una scorsa a queste nuove slide di John Resig.