mi piacerebbe per determinare programatically la codifica di una pagina tramite JavaScript, o qualche altra API da un browser. La ragione per cui voglio questa informazione è perché sto tentando di sfogliare i browser più importanti su quali codifiche dei caratteri supportano, e ovviamente solo perché ho inviato l'appropriato "Content-Type" non significa che il browser farà la cosa giusta con la codifica . Qualsiasi altro metodo possibile sarebbe benvenuto, ma preferirei non fare clic su "Informazioni sulla pagina" per 50+ codifiche di caratteri.Ottenere la codifica della pagina/iframe tramite JavaScript
risposta
JavaScript può segnalare solo alcune delle cose che sono in corso. La maggior parte dei browser non ti mostra abbastanza impostazioni utili per farti basare qualsiasi test hardcore.
ci sono cose come document.inputEncoding
, document.characterSet
(non IE), document.charset
, e document.defaultCharset
(IE) che potrebbe ottenere una parte del cammino lì. Ma questi potrebbero essere traballanti quanto il supporto reale. Cioè, se un browser "pensa" supporta una codifica ma in realtà non lo fa, non è qualcosa che vuoi sapere?
Penso che la soluzione migliore sia impostare una pagina di test dinamica con alcuni caratteri abbastanza difficili (o un set di test veramente grande), caricare il test in un browser, fare in modo che il browser riporti la stringa ID del browser, le impostazioni di codifica , richiesta di codifica originale e contenuti di testElement.innerHTML
che è possibile verificare in base ai risultati previsti.
'document.characterSet' è nelle versioni più recenti di IE (da IE 9). È completamente sicuro da usare ora, a meno che non sia davvero necessario supportare browser molto vecchi. –
La risposta originale è abbastanza vecchio ora e il supporto per document.characterSet
è migliorata notevolmente.
>>> document.characterSet
IE 11:
"utf-8"
Firefox 52, Chrome 55 e Chrome su Android, Safari 10:
"UTF-8"
Così sembra che per la maggior parte degli scopi si può fare affidamento su queste informazioni , risolvendo il caso diverso. Nel mio caso è stato utile raccogliere queste informazioni a scopo di monitoraggio.
- 1. Codifica tramite telefono cellulare
- 2. Controllo della finestra del browser tramite Javascript
- 3. Come impostare la codifica della pagina meccanize?
- 4. Codifica caratteri Javascript predefinita?
- 5. JSLint migliora la codifica di Javascript?
- 6. Codifica percentuale javascript
- 7. JavaScript di codifica Esempi
- 8. Dovrei preoccuparmi della codifica durante la serializzazione?
- 9. La codifica 64 della stringa è codificata?
- 10. JavaScript bookmarklet e codifica URL
- 11. Carica un file con la codifica tramite FTP in C#
- 12. Come ottenere la posizione della barra di scorrimento con Javascript?
- 13. Ottenere la data successiva dal giorno della settimana in JavaScript
- 14. Come ottenere il nome di dominio tramite JavaScript?
- 15. Come modificare la codifica del file system tramite python?
- 16. Ottieni/imposta la codifica dei file con FileReader di javascript
- 17. Rilevamento della frequenza cardiaca tramite la fotocamera
- 18. Jquery ignora la codifica ISO-8859-1
- 19. Codifica della password
- 20. Come verificare la visibilità dell'elemento tramite javascript?
- 21. Pulizia HTML tramite JavaScript
- 22. JSON codifica/decodifica base64 codifica/decodifica in JavaScript
- 23. javascript per ottenere l'url della pagina precedente
- 24. ottenere JavaScript argomenti della funzione genitore
- 25. ottenere la riga selezionata tramite AbstractTableModel
- 26. Ottenere sudo per chiedere la password tramite la GUI
- 27. Ottenere resto della stringa alla fine con mb_substr() e ancora impostare la codifica
- 28. In che modo l'oggetto Mappa Javascript migliorerà la nostra codifica?
- 29. Invio della risposta di codifica in JSON
- 30. PHP: codifica degli attributi HTML/decodifica JavaScript
perché hai bisogno di queste informazioni? Non vedo cosa ti compra? Nota, anche il supporto di una codifica non significa troppo. Ad esempio, IE supporta i set di caratteri UTF-8 ... ma non può restituire tonnellate di caratteri speciali che altri browser possono. Che cosa hai intenzione di fare con questi dati una volta raccolti? – scunliffe
Se si hanno errori di codifica nei moduli, può essere utile sapere quale charset il browser pensa che sia la pagina. – joar