Ответ 1
Отправка кодировки в заголовки всегда хорошая идея.
Если это невозможно, тэг <script>
имеет свойство charset
. Ссылка W3C
<script src="translations.js" type="text/javascript" charset="utf-8"/>
Я хотел бы напечатать сообщение статуса моим немецким пользователям, которое содержит umlauts (ä/ü/ö). Я также хотел бы, чтобы они находились в исходном файле, вместо того, чтобы загружать и анализировать дополнительный файл только для сообщений.
Однако я не могу найти способ определить кодировку исходного файла JS. Есть что-то вроде HTML http-equiv
? Или я должен определить кодировку в HTTP-заголовке?
Когда я просто кодирую файл в UTF-8, подавайте его, IE отображает мусор.
Отправка кодировки в заголовки всегда хорошая идея.
Если это невозможно, тэг <script>
имеет свойство charset
. Ссылка W3C
<script src="translations.js" type="text/javascript" charset="utf-8"/>
Похоже, что атрибут charset для тега script не устарел в HTML5 (он устарел только для тегов a и link).
Для французского javascript js мы использовали еще одну кодировку:
<script src="./js/MyScript.js" type="text/javascript" charset="iso-8859-1"></script>
Пока параметр charset окажется полезным, важно отметить, что он фактически не рекомендуется в HTML5.
http://www.w3.org/International/questions/qa-html-encoding-declarations#charset
Это может показаться немного глупым, но обязательно сохраните файл javascript с правильной кодировкой в редакторе, который вы используете. У меня была проблема с кодировкой моего javascript файла, и решение было таким простым, как это!
Простейшим решением вашей проблемы будет использование unicode escape для специального символа в строках. Таким образом, на ваш код не влияет страница, на которой он размещен.
Инструмент, который может вам помочь: http://www.webstein.net/tools/javascript-unicode