Alcuni script, ed alcuni Web, usano alcune funzioni Javascript spacciandole per non-intrusive (Unobtrusive), anche quando non lo sono affatto. Cosa rende uno script (solitamente Javascript) non intrusivo? In linea di principio uno script Javascript è non-intrusivo quando si può far a meno di esso! Detto molto semplicemente! Nello sviluppo di un sito Web l’usabilità dello stesso non deve dipendere da nessun tipo di script. Solo in questo caso abbiamo un genuino script Unobtrusive.
Gli script Javascript non intrusivi migliorano o modificano comportamenti già presenti su una pagina Web. Librerie come Shadowbox, ad esempio, sono davvero Unobtrusive in quanto, in caso di loro assenza, non impediscono la navigazione e il funzionamento del sito Web. Sempre se vengono utilizzati correttamente. Alcuni script Unobtrusive, e spesso libreirie, nonostante siano effettivamente svincolati dalla navigazione possono, a volte, essere utilizzati in modo spinto, così da perdere la loro non-intrusività!
Su questo Blog, ad esempio, ho inserito una semplice funzione di pseudo-accordion nella sidebar qui a fianco. Sfruttando libreirie come Prototype.js (per il listener degli eventi) e Scriptaculous.js (per l’animazione), ho "alterato" le schede (statiche) che dividono le sezioni nella sidebar: cliccandoci sopra verrà simulata una sorta di apertura/chiusura animata. Eliminado lo script, tuttavia, questo Blog rimane del tutto accessibile e navigabile, il che rende lo script davvero Unobtrusive:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /* ** @rel.2.0 */ document.observe('dom:loaded', function(){ $$('h2.dropdown').each( function(element) { element.style.cursor="pointer"; element.observe('click', function(event) { if( this.next().style.display == "" ) new Effect.BlindUp(this.next(),{duration:.5}); else new Effect.BlindDown(this.next(),{duration:.3}); Event.stop(event); } ) } ); } ); |
Esso non fa altro che aggiungere un nuovo comportamento che di per sè non altera la normale navigabilità di questo Blog. Alcuni, tuttavia, confondono il "patching" a pagina caricata con il concetto di Unobtrusive. Alcuni script, infatti, non possono essere "eliminati" dalla struttura di un web. Una tale azione renderebbe il sito non navigabile o – peggio – non accessibile.
La stessa Shadowbox, ad esempio, può essere utilizzata anche come script intrusivo e questo, in definitiva, non è che una scelta. Ad esempio sul sito web e-lementi.com ho usato una serie di script, e la stessa Shadowbox, in modalità intrusiva, nel senso che disattivanto Javascript il sito web non è navigabile! Tuttavia non spaccio quegli script come Unobtrusive.








12
[...] l’accessibilità del sito sfruttando un True-Unobtrusive-Javascript in modo che crawler e spider continuino a vedere la pagina come semplice e corretto [...]