2010-09-20 10 views
7

Desidero accedere alle impostazioni del browser dell'utente e modificare la lingua del browser, è possibile utilizzare Javascript?Come cambio la lingua del browser con Javascript

Se è possibile, come posso accedervi? (codice di esempio)

+0

Perché si desidera modificare la lingua del browser? – Lekensteyn

+0

voglio usare il pacchetto di risorse in java. – ammar

+0

con la funzione bundle di risorse, il browser può selezionare la lingua automaticamente dalla lingua del browser. quindi con la modifica della lingua del browser posso creare un sito Web multilingue – ammar

risposta

1

Questo non è assolutamente possibile utilizzando JavaScript su una pagina web.

Un'estensione del browser potrebbe avere i diritti di modificare questo - non sono sicuro, dipenderà anche dal browser. Tuttavia, la costruzione di una tale estensione richiederebbe una discreta quantità di abilità e lavoro.

5

No, non è possibile. Come lo troveresti se aprissi una pagina e il tuo browser diventasse arabo (o qualche altra lingua che non puoi leggere)?

+0

Se ciò accadesse, lo troverei molto bello, poiché significa che l'impossibile è stato raggiunto –

+0

Mi preoccupo e mi chiedo quale vulnerabilità è stata abusata – Lekensteyn

+0

Stai pensando nelle pagine web e non nel web -applicazioni.Come lo troveresti se apri un'applicazione web e il tuo browser (arabo) mostra l'arabo, mentre il tuo profilo utente dell'applicazione web è l'inglese? –

4

Questo è impossibile e una cattiva idea. Un'idea migliore è quella di rilevare la lingua del browser, che è possibile fare abbastanza bene, e chiedere all'utente di cambiarla (supponendo che la modifica sia assolutamente necessaria).

+0

non è facile da usare – ammar

+4

Né cambia il browser di un utente lingua –

+1

@Andrew Dunn, @ammar, solo questo è facile da usare: tutto ciò che l'utente vuole deve essere raccolto dal cervello dell'utente usando nanomacchine nel sangue che sono collegate in modalità wireless al mio server che ha una buona intelligenza artificiale, che può anche predire il aspettative dell'utente. Potrebbero essere applicate tariffe che potrebbero essere contrarie alle leggi della tua giurisdizione. –

4

È possibile rilevare, ma non è possibile impostare.

var lang = navigator.language || navigator.userLanguage; 

// navigator.language  : Netscape & Firefox 
// navigator.userLanguage : Internet Explorer 


Se si desidera uscita diverse lingue, il modo migliore è quello di farlo sul lato server. O:

  • uso una chiamata AJAX per caricare dinamicamente la pagina appropriata
  • utilizzare una variabile di sessione per caricare la pagina iniziale in modo corretto
2

Se quello che realmente vuole fare è rilevare la lingua dell'utente sta usando, che è quello che vuoi fare, perché nulla infastidisce i tuoi visitatori più che le loro preferenze del browser vengono modificate, sul lato server, leggi l'intestazione della richiesta HTTP Accept-Language che tutti i browser moderni inviano, dovrebbe contenere tutte le informazioni che bisogno. Se è assente, assumere la lingua del tuo più vasto pubblico.

Check out RFC2616 Section 14.4 per ulteriori informazioni su Accept-Language ed è uso.

Problemi correlati