Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-rus] Some question about JavaScript



On Thu, Oct 15, 1998 at 09:33:19AM +0300, Алексей В. Меледин wrote:

> >  Проблема вот какая. Иногда на JavaScript бывает очень удобно
> >генерировать HTML-документы :
> >
> >document.open();
> >document.writeln(...);
> >document.writeln(...);
> >document.close();
> >
> >  И все было бы хорошо, пока не пришли новые нетскейпы - я имею
> >ввиду 4.06, 4.5, 4.07. У генерируемого документа чарсет получается
> >iso-8859-1 ! Хотя у документа, в котором работала JS-программа,
> >сгенерировавшая документ, чарсет прописан и прописан правильно.
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>     Не может быть. У меня такая бага только под ИЕ4. Пишу в фрейм из
> документа в указанной чарсет, а в итоге получается, что фрейм генериться в
> Unicode. Ни предвварительная загрузка в него пустого документа с чарсет, не
> указание в сгенеренном файле чарсет - ничего не помогает. На www.webclub.ru
> где-то конфа лежит, но там мы так и не нашли выхода.
>     C Нетскапе 4.05 такого бага не выходило. Генерил он исправно. Если ты
> генеришь из того же документа, то полезно помотреть, в какой кодировочке у
> тебя грузанулся документ до document.open();

   Прошу прощения, что вмешиваюсь в офтопик, :) но, во-первых, эффект, о
 котором говорил Феликс, имеет место, во-вторых, на чарсет родителя он
 смотрел - читайте внимательно оригинальный мейл. У меня лично с NC-4.06
 порождение document.open() всегда имеет charset=koi8-r, и никакими
 ухищрениями не удается от этого избавиться, включая попытки написать
 document.open("text/html;charset=..."), включить таг
 <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=...">,
 и конечно, игры с чарсетом документа-родителя.

 Интересно другое. У меня Netscape-4.06 всегда перекодирует (причем совершенно
 корректно) в koi8-r все, что проходит через document.write(), но только для
 кодировок koi8-r, windows-1251, utf-8 и iso-8859-5. Для ibm866 перекодировка
 не выполняется, для x-mac-cyrillic часть кириллицы выдается как "?",
 а часть просто теряется. По-видимому, нетскейп корректно работает лишь
 с теми кодировками, которые ему известны.

 Кроме того, документ явно фильтруется нетскейпом, в частности, откуда-то
 появляется таг <BASE HREF=...>, а все HTML-таги преобразуются в upper case.
 Для тех, кто хочет проверить, кидаю скрипт:

<script language=JavaScript>
 wp=window.open();
 wp.document.open();
 letters="юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧёЁ"
// wp.document.write("\<meta http-equiv='Content-Type'"+
//     " content='text/html; charset=windows-1251'\>\n\n");
 wp.document.write("Проверка связи<br>\n");
 wp.document.write("len="+letters.length+"<br>");
 for(i=0;i<letters.length;i++){
   chr=letters.substring(i,i+1);
   wp.document.write(escape(chr)+" '"+chr+"'<br>");
 }
 wp.document.close();
</script>

> Все таки тема эта не для apache-rus, а для javascript-rus или Netcaster :),
> IMHO

 IMHO, если не очень шуметь, Alex поленится выйти в эфир со своей метлой... :))
--
 Eugene Berdnikov





Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.