Как проверить правильность поддержки браузером символов UTF-8? - PullRequest
3 голосов
/ 09 апреля 2009

Есть ли способ определить, установлена ​​ли кодировка браузера на / поддерживает "UTF-8" из Javascript?

Я хочу отправлять письма типа "UTF-8" или "English" на основе настроек браузера прозрачно (т.е. без запроса пользователя)

Редактировать: Извините, я не очень ясно по этому вопросу. В браузере кодировка обычно указывается как Auto-Detect (or) Western (Windows/ISO-9959-1) (or) Unicode (UTF-8). Если пользователь установил значение по умолчанию Western, то символы, которые я отправляю, не читаются. В этой ситуации я хочу сообщить пользователю либо установить кодировку "Auto Detect" (or) "UTF-8".

Ответы [ 2 ]

1 голос
/ 09 апреля 2009

Во-первых, UTF-8 - это кодировка набора символов Unicode. Английский язык Я предполагаю, что вы имеете в виду «ASCII» (набор символов и его кодировка) вместо английского.

Второе, ASCII и UTF-8 перекрываются; любой символ ASCII отправляется в точности в тех же битах, что и UTF-8. Я почти уверен, что все современные браузеры поддерживают UTF-8, и те, которые не будут, вероятно, будут обрабатывать его как latin1 или cp1252 (оба из которых перекрывают ASCII), поэтому он все равно будет работать.

Другими словами, я бы об этом не беспокоился.

Просто убедитесь, что ваши документы правильно помечены как UTF-8, либо в заголовках HTTP, либо в метатегах.

0 голосов
/ 09 апреля 2009

Я предполагаю, что длина вывода (которую вы читаете после ее вывода) может сказать вам, что произошло (или, без JavaScript, используйте HTTP-заголовок Accept-Charset, и предполагаю, что кодировка UTF-8 поддерживается, когда Unicode принято).

Но вам лучше беспокоиться об отправке правильных заголовков UTF-8 и так далее, а также об альтернативных сценариях для обеспечения доступности, а не о возможностях UTF-8 текущих браузеров.

...