Я пытаюсь написать HTML-страницу только для MSIE (которую я назову «титульной страницей»), которая позволяет кому-либо сохранять сгенерированную веб-страницу HTML (которую я назову «новой страницей») одним щелчком мыши. кнопка.
Я обнаружил, что диалоговое окно «Сохранить как», которое появляется, не позволяет сохранить «Новую страницу» как UTF-8 без спецификации. Вместо этого он сохраняется как Unicode (UTF-8), который, в свою очередь, имеет браузеры, определяющие его как UTF-16. Ниже приведен пример кода «Титульной страницы»:
<html>
<head>
<script>
/**
*Takes the information in the form and arranges it in the proper format.
*/
function save()
{
str = "Hello World";
mydoc = document.open();
mydoc.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");
mydoc.write("\r\n\r\n");
mydoc.write("<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n\t<head>\r\n\r\n\r\n\r\n\r\n<!--LOOK FOR \"EDIT HERE\"//-->\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\r\n\r\n<title>");
/*Inserts str in the title*/
mydoc.write(str);
mydoc.write("</title>\r\n\r\n\t</head>\r\n\r\n\r\n\t<body>\r\n\r\n\r\n<!--EDIT HERE//-->\r\n\r\n<H1>");
/*Inserts form variables from here*/
mydoc.write(str);
mydoc.write("</H1>\r\n\r\n\r\n<!--DO NOT EDIT BEYOND THIS POINT//-->\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</body>\r\n</html>\r\n\r\n");
mydoc.execCommand("saveAs",true,"*.html");
mydoc.close();
}
</script>
</head>
<body>
<p align=right><input type="button" value="save" onclick="save()"></p>
</body>
</html>
Я проверил «Новый файл» с помощью http://web -sniffer.net / , и он говорит мне, что «Новый файл» сохраняется таким образом:
<code>ÿþ!<�D�O�C�T�Y�P�E� �h�t�m�l� �P�U�B�L�I�C� �"�-�/�/�W�3�C�/�/�D�T�D� �X�H�T�M�L� �1�.�0 �T�r�a�n�s�i�t�i�o�n�a�l�/�/�E�N�"� �"�h�t�t�p�:�/�/�w�w�w�.�w�3�.�o�r�g�/�T…</code>
Могу ли я что-нибудь сделать, чтобы предотвратить сохранение "Новой страницы" как UTF-16 на моем конце? Или это не имеет ничего общего с кодом?
Кроме того, в диалоговом окне «Сохранить как» есть выпадающий список, который предположительно позволяет мне изменять кодировку символов, но все, что на самом деле делает, это сохраняет «титульную страницу», а не «новую страницу».