Categoria: JavaScript

React: guida alla libreria JavaScript di Facebook

E’ iniziata la pubblicazione a puntate della guida a React sul portale HTML.it, il periodico che raccoglie guide, articoli ed esempi sui linguaggi per il Web e non solo. Che cos’è React? React è una libreria JavaScript per la costruzione di interfacce utente, realizzata e mantenuta da Facebook e impiegata nell’omonimo social network oltreché su Instagram. La libreria possiede interessanti caratteristiche peculiari: grazie al supporto del Virtual DOM, è in grado di aggiornare la pagina Web in modo estremamente veloce; consente inoltre di creare componenti che rappresentano una parte specifica dell’interfaccia utente, permettendo la loro configurazione in base ai dati contenuti in un modello, con la possibilità di combinare uno o più componenti per realizzare quella che è l’interfaccia completa

Leggi l'articolo completo

Masonry: layout a griglia flessibili in JavaScript

In lingua inglese, il termine Masonry significa “muratura”, ed è lo stile da cui prende spunto l’omonima libreria JavaScript Masonry, che permette di implementare un layout a griglia nel proprio sito Web in cui gli elementi vengono disposti in automatico per ottimizzare lo spazio occupato in verticale all’interno della pagina, allineandoli in modo del tutto simile al processo di costruzione di un muro di mattoni, da cui il nome della libreria. Come funziona Masonry E’ possibile pensare al layout come un “float ruotato” dove gli elementi sono affiancati lungo il senso verticale della pagina, quindi dal basso verso l’alto (o viceversa), piuttosto che in senso orizzontale, come avviene normalmente quando si utilizza la proprietà float dei fogli di stile CSS

Leggi l'articolo completo

Crea grafici interattivi HTML5 con Chart.js

Hai bisogno di disegnare grafici interattivi di impatto oppure diagrammi all’interno di siti Web o applicazioni mobile? Con la libreria Chart.js disegni direttamente nel client (quindi nel browser) ben 6 tipologie di grafici differenti con cui puoi rappresentare dati per trasformarli in informazioni, senza ricorrere a soluzioni che richiedano l’intercessione del server per la generazione dinamica di immagini da scaricare, e soprattutto consentendo all’utente di interagire con il grafico (tramite mouse o con il tocco) per ottenere dettagli sulle grandezze raffigurate. Da dove vengono presi i dati da visualizzare nei grafici? Potete sfruttare la tecnologia AJAX scaricandoli in formato JSON tramite JavaScript da un server REST oppure inserirli direttamente nella pagina nella fase di generazione lato server della stessa. L’aspetto

Leggi l'articolo completo

HTTP Live Streaming: contenuti multimediali sul Web

La diffusione e riproduzione di contenuti multimediali è senz’altro l’attività principale per la quale si sfrutta il Web al giorno d’oggi: è importante poter contare sull’esistenza di standard consolidati a cui professionisti e semplici amatori possono appoggiarsi per rendere fruibili a un pubblico estremamente vasto filmati, brani musicali, interviste, presentazioni live, insomma tracce video e audio, così come è determinante da parte dei “consumatori” poter riprodurre queste risorse ovunque, quindi non solo all’interno del classico browser, ma anche su dispositivi mobili come smartphone e tablet di qualsiasi fascia. Esistono oggi diversi protocolli ampiamente diffusi che si prefiggono di soddisfare questa esigenza: ad esempio, si può ricorrere al generico UDP (User Datagram Protocol) o al più specifico RDP. Si tratta di

Leggi l'articolo completo

HTML5 e Famo.us: interfacce su qualsiasi schermo

Il linguaggio HTML5, combinato con CSS3 e JavaScript, costituisce sempre più la via preferenziale per lo sviluppo di applicazioni cross platform e soprattutto cross device, e questa tendenza è spinta ancora di più dall’ampia disponibilità di librerie e framework in circolazione che sfruttano lo standard costruendovi sopra modelli a oggetti per la costruzione di interfacce utente dinamiche e complesse, utilizzando paradigmi talvolta completamente diversi tra loro, ma tutti interessanti per il modo particolare di “concepire” l’architettura delle applicazioni e gestirne l’aspetto e il funzionamento. In questo articolo pubblicato su HTML.it mostro come utilizzare una di queste librerie dal nome molto curioso: Famo.us. Si tratta di uno strumento rivolto alla costruzione di interfacce utente, con particolare cura nel supporto alla visualizzazione

Leggi l'articolo completo

Creare interfacce utente di applicazioni Web con React

In questo articolo pubblicato su HTML.it (prima parte) illustro come creare le interfacce utente delle vostre applicazioni Web con React. React è la libreria creata da Facebook e Instagram (acquistata dalla società di Mark Zuckerberg) e impiegata anche nella costruzione dei due popolari social network, per la creazione di interfacce utente estremamente dinamiche per le applicazioni Web. La peculiarità di questa libreria risiede nel suo operare per componenti, scomponendo idealmente e praticamente gli elementi che costituiscono l’interfaccia nelle loro parti, fino ad arrivare a quelle più piccole, realizzando per ciascuna un componente autonomo, che definisce il proprio stato e racchiude la logica di funzionamento, procedendo successivamente alla loro aggregazione finale per ottenere l’interfaccia complessiva del sito. Oltre a semplificare notevolmente

Leggi l'articolo completo

Gestire il touch nelle pagine Web con Touchy.js

In un precedente articolo avevo già affrontato l’argomento dell’uso del touch all’interno delle pagine Web, analizzando quelle che sono le tecnologie emergenti a cui sta lavorando il W3C per il supporto diretto a questo tipo di interazione nei browser moderni (ad esempio, l’API Pointer Events). L’adozione di standard che sono ancora in via di definizione, l’estrema variabilità del loro supporto da parte dei browser e una certa complessità di gestione può rendere arduo introdurre il supporto touch all’interno del proprio sito, anche per interazioni molto basilari. Esistono librerie JavaScript che si fanno carico di interpretare l’input dell’utente fornendo una interfaccia di programmazione semplificata che agevola quindi l’introduzione di funzionalità basate sul tocco, sopperendo in molti casi anche alle lacune e

Leggi l'articolo completo

Grafica 3D all’interno delle pagine Web

Il supporto a WebGL integrato nei browser moderni ci consente di aggiungere alle pagine Web sfondi, superfici, texture, luci, ombre, effetti e animazioni che vengono riprodotti sfruttando l’accelerazione hardware e la potenza della GPU della scheda grafica. In questo articolo pubblicato su HTML.it vedremo come è possibile creare – con pochissime righe di codice – una semplice classe che definisca un’ambientazione tridimensionale all’interno di una pagina Web, utilizzando gli oggetti della libreria Away3D e il linguaggio TypeScript. Come sempre, buona lettura!

Leggi l'articolo completo

Creare un sito touch: la nuova frontiera del Web

Esiste un elemento che ha cambiato radicalmente le nostre abitudini nell’uso dei dispositivi moderni quali smartphone, tablet e non solo: il “tocco” (touch). L’avvento dello standard HTML5 ha portato una quantità infinite di nuove possibilità alle pagine Web: il supporto integrato alle risorse multimediali, un uso più spinto della semantica attraverso tag specifici, controlli di input specializzati per arricchire i nostri moduli e validare i dati, la possibilità di archiviare informazioni in uno storage locale, il disegno 2D con il Canvas, la geolocalizzazione e altro ancora. Microsoft è una delle aziende che sta facendo da vòlano a questa tecnologia, collaborando tutt’ora con il W3C nella definizione di una API standard per la gestione dell’input proveniente da dispositivi eterogenei (mouse, tocco

Leggi l'articolo completo

Riprodurre suoni e musica su qualsiasi dispositivo con JavaScript

Grazie al diffondersi di dispositivi come smartphone e tablet sempre più orientati al multimediale, per determinate tipologie di siti Web, applicazioni e giochi (a maggior ragione) si presenta l’esigenza di poter riprodurre musica ed effetti sonori all’interno del browser. Il supporto all’audio generico nei browser è sempre stato parziale ed eterogeneo. L’avvento di HTML5 ha migliorato lo scenario, grazie alle potenzialità del nuovo standard, che tuttavia non è supportato da tutti i browser, rendendo quindi difficile se non impossibile per gli sviluppatori individuare una soluzione univoca che permetta di riprodurre il suono indipendentemente dal browser, dal dispositivo e dalla piattaforma. La libreria SoundManager2 ci viene in aiuto fornendoci un API gratuita in linguaggio Javascript che consente di gestire il playback

Leggi l'articolo completo