Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Utilizzare SmartGWT anche con le vecchie versioni di Internet Explorer
Scritto da Francesco Carotenuto il 02-11-2011 ore 10:18
Intel Parallel Studio XE
Uno degli scopi principali che hanno portato alla creazione di framework AJAX come Google Web Toolkit (GWT) è quella di sollevare lo sviluppatore dall'onere di dover testare la propria web application su ogni tipo e versione diversa di browser.

Purtroppo utilizzando librerie di widget abbastanza ricche e complesse, come SmartGWT, non è sempre possibile avere la compatibilità totale per tutti i browser, soprattutto quando ci troviamo di fronte vecchie versioni di Internet Explorer.

Di solito, per risolvere questi problemi, si ricorre alla scrittura di metodi nativi JavaScript da eseguire solo se la webapp gira su un particolare browser, ma prima di ricorrere a tali soluzioni potrebbero essere sufficienti piccoli accorgimenti, che oltre a cercare di migliorare la visibilità della webapp, possono risolvere altri problemi, che si possono avere visualizzando il sito in una vecchia versione di IE, come l'elevato consumo di CPU, nel caso in cui la webapp da testare utilizzi le chiamate GET.

Per prima cosa, bisognerebbe utilizzare sempre le versioni più recenti di SmartGWT, che con il passare del tempo cercano di risolvere inconvenienti che affliggono le parti di codice dedicate alle vecchie versione di IE.

In secondo luogo, si può far ricorso al quirks mode applicando, nella pagine HTML nel cartella war del progetto GWT, un commento sopra al tag DOCTYPE, se non addirittura cancellando il suddetto tag, per non incappare nella realizzazione del browser del DTD specificato nel DOCTYPE.

Inoltre se con IE7 non ci sono problemi di visualizzazione, potrebbe essere utile introdurre nel file HTML, il meta tag X-UA-Compatible nel seguente modo
  1. <html>
  2. <head>
  3. <meta http-equiv="X-UA-Compatible"
  4. content="IE=EmulateIE7" />
  5. ...
  6. </head>
  7. </html>
Tale tag viene letto e interpretato solo da IE e ignorato dagli altri browser, e obbliga ogni versione di IE a visualizzare la webapp con le modalità di visualizzazione di IE7. Per utilizzare l'emulazione di IE7 è necessario intervenire anche sul file .gwt.xml del progetto aggiungendo il seguente tag:
  1. ...
  2.  <set-property name="user.agent" value="ie6" />
  3. ...
Concludiamo ricordando che, dalla versione di IE 8, è possibile caricare le pagine web utilizzando le modalità di visualizzazione delle versioni precedenti, semplicemente premendo F12 nel browser e selezionando la modalità desiderata. Ciò è molto utile per verificare facilmente se gli accorgimenti hanno avuto o meno gli effetti desiderati.
Precedente: Ottimizzare lunghe liste di valori booleani con JavaScript
Successiva: AppCode, un nuovo IDE per Objective-C
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.272 secondi.