Introduzione alle promesse di jQuery

Una delle novità recentemente introdotte da jQuery riguarda il paradigma di programmazione asincrona basato sul concetto di promessa. Per capire di cosa si tratta facciamo un passo indietro e ripercorriamo brevemente la storia della programmazione JavaScript. Alcuni anni fa l'unico modo di gestire gli eventi del DOM era quello di aggiungere un event handler come attributo del codice markup, ad esempio scrivendo onClick = funzione(). Col passare … [Read more...]

Scrivere nel file system con Node.js

Node.js permette di realizzare script server-side con estrema facilità, utilizzando una sintassi molto simile a quella di JavaScript. Uno dei compiti spesso necessari quando lavoriamo lato server riguarda l'accesso alle risorse nel file system disponibili sul server. Ciò solitamente significa leggere i files dal server per servirli al client. In alcuni casi è però necessario saper compiere anche l'operazione inversa, ovvero scrivere sul file … [Read more...]

Come gestire l’eredità di bordi e colori con CSS

La questione della ereditarietà delle proprietà CSS impatta molti aspetti della presentazione di una pagina Web. L'effetto a cascata, cioè del cascading, è spesso un'arma a doppio taglio. Da un lato ci aiuta a definire tutte le proprietà negli elementi contenitori, dall'altro ci costringe ad intervenire negli elementi contenuti per sovrascrivere le proprietà ereditate dai “genitori”. In alcuni casi il problema non riguarda le definizioni CSS … [Read more...]

La manipolazione del font con JavaScript

Le funzioni JavaScript relative alla manipolazione delle stringhe permettono di operare molte trasformazioni sul testo, analoghe a quelle che una volta venivano fatte in HTML e che oggigiorno sono realizzate usando CSS. Mentre la pratica di formattare il codice con attributi HTML è stata deprecata a favore di CSS, l'uso di JavaScript (in questo contesto) può ancora risultare utile in alcuni casi. In linea di massima la presentazione del codice … [Read more...]

Come implementare i menu Accordion con jQueryUI

I menu accordion, cioè a fisarmonica, sono una tendenza molto apprezzata sul Web 2.0. Si tratta di un'interfaccia che per certi versi rappresenta un'evoluzione dei menu a cascata, noti anche come menu drop-down. Molto probabilmente li abbiamo usati moltissime volte senza nemmeno accorgercene, perché il loro utilizzo è semplice e intuitivo. Per farci un'idea del funzionamento di un menu fisarmonica possiamo dare un'occhiata alla demo disponibile … [Read more...]

Encoding dei caratteri e i Buffer di Node.js

Lavorando con Node.js possiamo gestire i dati delle connessioni HTTP a basso livello. Ciò implica spesso trattare i dati “grezzi”, che in genere sono molto diversi da quelli visualizzati nel browser. In particolare abbiamo bisogno di conoscere le nozioni elementari riguardanti la codifica dei contenuti, ovvero le modalità con le quali testi, stringhe, immagini ecc. vengono serializzati. Tali competenze servono anche se dobbiamo leggere o scrivere … [Read more...]

Impaginazione di un elenco con CSS, HTML5 e PHP

Qualsiasi applicazione che visualizzi un elenco di entità distribuito su più di una pagina richiede un sistema di paging, che in italiano possiamo tradurre come impaginazione. Ciò significa offrire all'utente la possibilità di navigare tra le diverse pagine dell'elenco in maniera pratica e veloce. L'esempio classico, che possiamo prendere come riferimento, riguarda l'impaginazione proposta da Google. Proviamo ad analizzarla per capire quali sono … [Read more...]

Gestione delle aree droppabili con jQueryUI

Grazie a jQuery possiamo implementare la funzione di trascinamento (drag and drop) con pochissime righe di codice. Un esempio pratico è disponibile qui, dove abbiamo introdotto jQueryUI, e mostrato come realizzare una semplice funzionalità di drag and drop. Il trascinamento degli oggetti è molto interessante ma di solito necessità di un aspetto complementare: la definizione delle aree dove possiamo eseguire il drop dell'oggetto. Il trascinamento … [Read more...]

La gestione degli eventi di Node.js

Node.js è una piattaforma che permette di realizzare applicazioni server side utilizzando la sintassi JavaScript. La piattaforma si basa sul motore V8 di Google. Chi non conoscesse Node.js può trovare un esempio di server completo, realizzato in modalità tutorial, riassunto in questo articolo. Il vantaggio di Node.js è quello di basarsi su una gestione orientata gli eventi, che permette di scaricare il lavoro dal processore all'interfaccia di … [Read more...]