Notizie: puoi sempre seguire i nostri aggiornamenti su Twitter (@MozillaItalia) e Facebook (/MozillaItalia)

Autore Topic: Rilevazione risoluzione monitor errata  (Letto 2345 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline dedric

  • Post: 2
Rilevazione risoluzione monitor errata
« il: 15 Marzo 2010 10:26:03 »
Ciao a tutti,

sto sviluppando un'applicazione web che in fase di caricamento della pagina necessita di conoscere la risoluzione del monitor da dove viene lanciata. L'applicazione è ormai in fase di ottimizzazione finale, quando, dopo aver aggiornato a firefox 3.6 per mac mi sono imbattuto in uno strano bug.
Solo con Firefox 3.6 per mac (con windows non c'è nessun problema e con tutti gli altri browser per mac) la risoluzione che viene rilevata dallo script javascript è errata! Esempio: un monitor 1280x1024 viene rilevato dallo script lanciato su firefox 3.6 come un monitor di risoluzione 1408x1126. Ho fatto diverse prove e sembra che il problema ci sia solo con questa versione di firefox.
Ecco il semplice codice che ho utilizzato per fare le prove, basta eseguirlo per vedere il risultato:
Codice: [Seleziona]
<script language="Javascript"><!--

alert ("largh, " + window.screen.width + " alt, " + window.screen.height);

//--></script>

Probabilmente non ci sarà soluzione e bisognerà attendere un bugfix, ma se qualcuno sa qualcosa in merito a questo problema accetto ogni tipo di consiglio.   :P

Grazie a tutti!

Rik

Offline flod

  • Amministratore
  • Post: 15057
    • http://www.flod.org
Re: Rilevazione risoluzione monitor errata
« Risposta #1 il: 15 Marzo 2010 10:33:41 »
Qui funziona tranquillamente. Rileva 1680x1050 sia su Firefox 3.6 che sulle nightly della 3.7 (Snow Leopard). Hai verificato con un profilo pulito se cambia qualcosa?

Offline dedric

  • Post: 2
Re: Rilevazione risoluzione monitor errata
« Risposta #2 il: 15 Marzo 2010 11:44:28 »
Ottima intuizione Flod!  :D
Ho fatto il test creando un nuovo profilo sulla macchina e in questo modo non da problema. Sembra che nel mio caso ho un problema dovuto a delle configurazioni rimaste di versioni precedenti che vanno in conflitto con la 3.6, oltretutto io lavoro con doppio monitor.
In ogni caso ho provato ad aggiornare la 3.6 su un'altra macchina e non ho avuto problemi. Risolverò il problema sul mio mac cercando di resettare le preferenze e sperando che il mio sia un caso raro. Ovviamente non posso dire a un utente di creare un nuovo profilo sulla sua macchina per fare andare l'applicazione.

Grazie ancora.

Rik

Offline klades

  • Moderatore
  • Post: 5788
    • http://www.nic-nac-project.org/~kaosmos
Re: Rilevazione risoluzione monitor errata
« Risposta #3 il: 15 Marzo 2010 13:04:27 »
Controlla di avere lo zoom impostato al valore di default: se cambi lo zoom, cambia anche il valore degli attributi di window.screen

In pratica i valori di window.screen si riferiscono alla "risoluzione virtuale" dello schermo data dallo zoom e non al suo valore fisso.

Leggendo https://bugzilla.mozilla.org/show_bug.cgi?id=547469 sembra che questo comportamento sia stato introdotto con Firefox 3.6 ed in modo intenzionale.

D'altra parte non esiste alcuna regola su quale criterio debbano basarsi i valori di window.screen, quindi ogni soluzione può essere valida.

0 Utenti e 1 Visitatore stanno visualizzando questo topic.