EH - Esposizione interattiva di xHTML etc.   Indici:   Pagine   Panoramica   Termini   Problemi   Esempi

Aggiunta di procedure a pagine HTML

Il linguaggio HTML originariamente consentiva solo di avere pagine statiche. Successivamente si sono fatte sempre più pressanti le esigenze di inserire dinamismi nelle sue pagine.

Due vie abbastanza canoniche riguardano l'introduzione di componenti JavaScript e applets Java.

Altre possibilità precedenti riguardavano le CGI, componenti che consentivano l'intervento sulla pagina gestita dal browser del server dal quale la pagina proveniva.

Altre possibilità sono state fornite dai plug-ins e dai cookies.

Un vero e proprio distacco da HTML dettato dall'esigenza di rendere le pagine Web più reattive e dinamiche, si è avuto nel 1997 e nel 1998 con il tentativo di diffondere un DHTML, un Dynamic HyperText Markup Language.

Su cosa debba essere DHTML si registra attualmente un notevole disaccordo. Secondo Microsoft DHTML esiste già, implementato dalle versioni 4 del browser  Internet Explorer, mentre Netscape sostiene che DHTML è ben rappresentato dalle funzioni presenti nel suo Communicator 4. Tra i due litiganti, il W3C tende a ignorare l'esistenza dei browsers di quarta generazione e afferma che il dynamic HTML non esiste, dato che si tratta soltanto di un termine utilizzato per comodità da alcuni produttori per indicare un insieme di nuove potenzialità del Web che in parte sono state incluse in HTML 4.0 e in parte verranno implementate con strumenti e standards differenti, innanzitutto con scripts e fogli di stile.

In pratica, ciascuno dei diversi DHTML consente di costruire pagine che cambiano in base ad eventi determinati dall'utente: testi e immagini possono comparire e scomparire, modificare il loro formato, animarsi. Le pagine Web quindi possono diventare interattive e trasformarsi, ad esempio in seguito alla scelta di un'opzione su un menu a tendina, oppure secondo la posizione del puntatore del mouse. La grande novità introdotta dal DHTML è rappresentata dal fatto che la pagina, per cambiare aspetto, non ha più bisogno che ogni volta il client si ricolleghi al server per scaricare gli aggiornamenti.

DHTML non va confuso con DHML (Device Handled Markup Language), una versione molto semplificata di HTML che consente la costruzione di piccoli menu gerarchici adatti ai telefoni cellulari "smart", come i PocketNet Phone proposti da AT&T e da Mitsubishi, che consentono sia di telefonare, sia di navigare in Internet tra le pagine di informazioni di un server aziendale.

L'HTML dinamico, in un primo momento cavallo di battaglia di Netscape, è stato ripreso e ampliato con decisione da Microsoft, sulla base di presupposti tecnici molto differenti.

Il DHTML secondo Microsoft sfrutta i CSS e il DOM (Definition Object Model). Grazie a DOM, buona parte delle funzioni della programmazione a oggetti vengono interpretate dal browser stesso. Le modifiche interattive di una pagina Web possono quindi essere gestite con JavaScript, VisualBasicScript, con applets Java o con i controlli del sistema ActiveX, sviluppato dalla stessa Microsoft. Il DOM, per certi versi, consente di rendere le funzioni interattive indipendenti dalla struttura e dal contenuto dei documenti, così come i CSS permettono di gestire la formattazione di una pagina in modo separato. Il DOM si propone infatti di trasformare in oggetti tutti gli elementi di una pagina Web, e di fare in modo che questi siano modificabili in modo dinamico.

Sul DOM e sull'HTML dinamico, si concentrano anche gli interessi di ArborText, Grif, IBM, Inso, Novell, SoftQuad, e Sun Microsystems, tutti membri del gruppo di lavoro del W3C su questi argomenti. Non per caso, le prime bozze sul DOM rilasciate dal consorzio, non solo evitano di parlare di DHTML, ma addirittura ignorano l'esistenza dei browsers di quarta generazione, citando solo le versioni 3 di Netscape Navigator e di Internet Explorer, non dinamiche, e specificando che in ogni caso il DOM dovrà essere indipendente sia dalla piattaforma usata, sia dai linguaggi di programmazione.

Se l'HTML dinamico secondo Microsoft sfrutta i CSS e il DOM, il DHTML di Netscape si appoggia maggiormente a JASS (JavaScript Accessible Style Sheets) e sull'uso del tag Layer, con una struttura complessiva che non viene interpretata correttamente da Internet Explorer, ma richiede Navigator 4.0. Mentre il gruppo di lavoro di W3C sul DOM sta studiando e discutendo per trovare un accordo tra tutte le parti in causa, Netscape sostiene che le proposte di Microsoft non sono neppure un vero DOM, e Microsoft accusa il linguaggio JavaScript del concorrente di non essere in vera sintonia con Java.

Per vedere la dinamicità e l'interattività realizzate dall'uso del DOM, occorre avere un browser che implementi questo sistema, cioè Internet Explorer 4.0; con gli altri browsers, infatti, tutto ciò che è stato definito in DOM non viene visualizzato correttamente e la maggior parte della pagina continua ad apparire statica. Si pone quindi ancora un grave problema: lanciarsi sulle nuove estensioni, confidando in Microsoft, o creare due Web separati, uno standard e uno dinamico, oppure ancora affidarsi alle funzioni proposte da Netscape?

In questo panorama disordinato e instabile (forse la dinamicità è questa...), per farsi un'idea dei rischi connessi a un uso disattento di un DHTML che è ancora in cerca di un'identità, basta dare un'occhiata a http://www.all-links.com/dynamic/examples.html, dopo aver scaricato installato tutti i browsers dei quali, caso per caso si riveleranno giusti o sbagliati.

Microsoft, dopo aver rivoltato da cima a fondo tutta la sua strategia pur di dimostrare che i suoi progetti sono più conformi di quelli di Netscape agli standards W3C e in particolare ad XML, continua a proporre anche soluzioni proprietarie e la battaglia prosegue sul fronte della Push technology, della metadescrizione delle risorse Web e della gestione in rete dei files multimediali.


Indice pagine - inizio pagina