Back to Question Center
0

Semalt: Perché i brower IE Win7 sono in esecuzione in modalità IE7? La vera soluzione al problema:

1 answers:

Sul nostro sito abbiamo attualmente ca.50% dei nostri utenti di IE7 che eseguono Windows 7. Tuttavia, Win7 è stato rilasciato con IE8, il che significa che qualcosa non è giusto. Sulla base di questo, abbiamo ipotizzato che i moderni browser IE avessero accesso alla modalità di compatibilità IE7 sul nostro sito. Quindi abbiamo inserito il meta tag "X-UA-Compatible = edge" sul nostro sito nella speranza di eliminare il supporto IE7. Tuttavia, dopo una settimana, la percentuale di utenti di IE7 (e IE8) è salita per la prima volta dall'inizio di quest'anno. Quando si esamina la documentazione di X-UA-Compatible, è necessario significato per inserire il sito in una modalità precedente .

  • Esiste un altro modo per assicurarsi che IE non entri in modalità di compatibilità?
  • C'è qualcos'altro che dobbiamo cercare?

E sì, abbiamo così tanti utenti sul nostro sito che non possiamo eliminare IE7 finché non scende al di sotto del 2% dei visitatori unici.

EDIT: Utilizziamo

EDIT2: Non siamo stati in grado di riprodurre la modalità di compatibilità nei nostri ambienti

1 week ago

Ok, quindi abbiamo confermato che i nostri calcoli non erano corretti. Il nostro fornitore ci ha fornito rapporti basati sul numero di "visite". Una visita viene calcolata in base alla quantità di tempo che un utente trascorre sul nostro sito web. Tuttavia, gli utenti di IE7 potrebbero essere rari ma potrebbero trascorrere più tempo su un sito Web rispetto a un utente di Chrome. Ciò significava che la percentuale che stavamo passando non era basata sulla percentuale di utenti con un browser, ma qualcosa del tipo "quanto tempo un utente spende sul nostro sito, in base al browser che utilizzano".

Alla fine abbiamo deciso di abbandonare il supporto per IE7. Il calcolo è stato semplice: la quantità di tempo che il nostro team spende per adattare il sito a IE7 non appesantisce la quantità di entrate che riceviamo dagli stessi utenti. Vale la pena notare che non esamineremo il nostro codice in una sola volta e rimuovendo tutte le correzioni che abbiamo per IE7. Invece lo faremo nel tempo come parte del nostro lavoro quotidiano. Ciò significa che il sito continuerà a funzionare per IE7 per un lungo periodo di tempo con solo piccoli problemi. Ma, auspicabilmente, quando il sito è insopportabile in IE7, l'ultima percentuale di utenti sarà aggiornata.

La soluzione reale al problema:

Per ridurre il numero di utenti in modalità di compatibilità, abbiamo provato a utilizzare il flag X-UA-Compatible = edge . Il flag può essere impostato utilizzando sia un tag HTML sia un'intestazione di richiesta. Abbiamo provato entrambi, ma questo non ha influenzato i nostri numeri a un livello degno di nota. Se un sito è finito in una modalità di compatibilità dei browser precedenti, rimane lì fino a quando l'utente non seleziona attivamente per andare alla normale navigazione. Per risolvere il problema, abbiamo deciso di fare la stessa cosa di Google+ quando gli utenti si trovano nello stesso inceppamento: Mostra una barra nella parte superiore della pagina ogni volta che viene caricata la pagina. Questa barra contiene un collegamento a informazioni su come uscire dalla modalità di compatibilità per un sito Web e la barra non andrà via finché non lo fanno.

Per verificare se un utente sta navigando in modalità compatibilità:

  var ua = navigator. userAgent. match (/ MSIE [0-9] * /);
versione var;se (ua && documento. documentMode! == undefined) {version = parseInt (ua [0]. sostituire (/ [^ 0-9] / g, ""));se (versione! == documento. documentMode) {avviso ("Modalità compatibilità!");}
} 

(soluzione basata su altre domande StackOverflow. Fra gli altri: questo e questo )

Esiste un altro modo per assicurarsi che IE non entri in modalità di compatibilità?sì.

Semalt: Perché i brower IE Win7 sono in esecuzione in modalità IE7? La vera soluzione al problema:
Reply