ЖЖ от 2007-12-17 12:38:00

Вчера ещё одна PSP (у marat_n) обрела свободу, на этот раз через Pandora's Battery. _dofin_, diiina, ну вы поняли, да? :)

8 комментариев

Блогосфера на gopher'e — все друг друга знают

Помните я про gopher писал? OMG, на этом протоколе есть два блога: gopher://hal3000.cx/1/Phlog и gopher://hactar.net/1/blog. Мне их даже посмотреть нечем — на новой машине я поставил «Оперу», есть Internet Explorer, они gopher не поддерживают. Спасибо Ломакину Илье за ссылку.

6 комментариев

JSSS, JavaScript-based Style Sheets

В своё время, когда браузер фирмы Netscape был лидером на рынке, в нём была поддержка интересной, на мой взгляд, технологии, которая уже при рождении была незаслуженно забыта — «JavaScript-based Style Sheets» (JSSS). Сейчас эту технологию, насколько я знаю, не поддерживает ни один из существующих браузеров, а в те времена я использовал её, чтобы разделить стили для Netscape и Internet Explorer, а сейчас это представляет интерес не больше, чем Gopher.

Итак, в чём суть? Суть та же самая, что и в CSS, разница лишь в представлении. Несколько примеров, думаю, достаточно наглядно покажут суть:

<style type="text/javascript"><!--
    // H1 { color: blue }
    tags.H1.color = "blue";

    // BODY { color: black; background: white }
    with(tags.BODY) {
         color = "black";
        bgColor = "white";
     }

    // H1 EM .reddish { color: red }
    contextual(tags.H1, tags.EM, classes.reddish.all).color = "red";

    /* UL  LI { color: red }
        UL UL LI { color: blue } */
    with(tags) {
         contextual(UL, LI).color = "red";
         contextual(UL, UL, LI).color = "blue";
     }

     // P:first-line { font-style: small-caps }
     tags.P.firstLine.fontStyle = "small-caps";

     // P:first-letter { font-size: 200% }
     tags.P.firstLetter.fontSize *= 2; // 200%
--></style>

Теперь самое интересное, вычисляемые значения и функции:

<style type="text/javascript"><!--
    tags.IMG.width = .50 * document.width;

    evaluate_style() {
        if (visual.colorDepth < 2) {
             bgColor = "white";
             color = "blue";
        } else {  
             bgColor = "black";
             color = "white";
        }
    }

   tag.BODY.apply = evaluate_style()
   tag.ids.headertable.apply = evaluate_style()
--></style>

2 комментария

JavaScript benchmark: Opera 9.50b (build 9694) versus Safari 3.0.4b (build 523.12.9)

Интресно было сравнить скорость JavaScript в Opera и Safari, причём не скорость обращения к DOM или тому подобное, а чистую примитивную математику — циклы, ветвления, операции сравнения, арифметику и т. д. Для этой цели я выбрал свой компилятор языка Brainf*ck в JavaScript и запустил на нём «программу вычисления числа „Пи“» на Brainf*ck.

Результаты:

  • Safari 3.0.4 — 1579 мс.
  • Opera 9.50— 2078 мс.
  • Internet Explorer 6.0SP2 — 2766 мс.
  • Netscape Navigator 9.0.0.5 — 14313 мс.
  • FireFox 2.0.0.11 — 14578 мс.
    Я не очень понимаю почему таких плохие результаты у браузеров на основе Gecko, может, они не используют возможности многопроцессорный машин?

4 комментария

Курсы английского языка от «Британики»

Уже все успели оценить проект «Плохие стихи», рекламирующие курсы английского языка «Британика»? (Осторожно — говорят, трафика потребляет немало). На мониторах 16:9 (и, как следствие, на многих ноутбуках) посмотреть его просто так не получится — отказывается работать. По этому поводу вот вам небольшое колдунство в помощь, всё, что надо сделать — выставить ширину «флеша» в 80%. Вводим в строку браузера, после загрузки сайта:

javascript:void(document.getElementsByTagName('OBJECT')[0].width='80%')

После чего наслаждаемся содержимым.

17 комментариев