opera

Быстродействие JavaScript в браузерах

И ещё раз к теме быстродействия JavaScript. Jeff Atwood произвёл ряд JavaScript-тестов на разных браузерах. В результате получилась любопытнейшая картинка. Расшифровка тестов:

  • 3d — тест на основе библиотеки работы с 3D, написанной на JavaScript (испытывается —
  • быстродействие массивов и чисел с плавающей точкой)
  • access — массивы, свойства объектов, доступ к переменным
  • bitops — битовые операции на целых числах
  • controlflow — циклы, рекурсия, условия
  • crypto — криптоалгоритмы (AES, MD5, SHA1)
  • date — производительность при работе с объектом «Date»
  • math — различные математические операции
  • regpexp — регулярные выражения
  • string — работа со строками
Гистограмма времени выполнения кода в браузерах: Opera 9.5 — 5.4 с, Safari 3.0.4 — 6.6 с, Explorer 7 — 21.2 с, Firefox 2 — 10.5 с.

Хуже все справился IE7, но, если не принимать во внимание операции для работы со строками, он обгонит FireFox, который сейчас занимает предпоследнее место. В комментариях есть тестирование FireFox 3 b2, вцелом он справляется на 23% лучше, чем вторая версия, но на некоторых тестах проигрывает.

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

Анимация в вебе

Как известно, единственный формат анимированных картинок, который был доступен в вебе до недавнего времени — Animated GIF. Его недостатки общеизвестны — поддерживается только 256 цветов, нет полупрозрачности (альфа-канала). На смену GIF, теоритически, должен прийти более совершенный PNG, с выходом Internet Explorer 7, который стал поддерживать альфа-канал почти так же хорошо, как его младшие братья, ситуация всё улучшается, но…

В PNG, увы, нет анимации. Три новых формата, которые пока знакомы редкому веб-мастеру — APNG, MNG и SVG позволяют, в какой-то степени, исправить это досадное упущение.

MNG (Multiple-image Network Graphics) в данный момент поддерживается без плагинов в Konqueror и Netscape 6 и выше. Формат похож на PNG, но использует больше типов данных. Фрейм, используемый в анимации, может сохраняться в форматах PNG или JNG (JPEG Network Graphics, по сути — JPEG с прозрачностью).

Анимированный PNG (10.98КиБ)

APNG (Animated PNG) — формат расширяющий PNG и совместимый сверху вниз. Если ваш браузер не поддерживает APNG, вы увидите просто статичную картинку. В настоящее время формат поддерживают Opera 9.50 и далёкий пока от релиза FireFox 3. Картинка выше этого абзаца — тест, поддерживает ли ваш браузер APNG. Если вы видите «Your browser does support Animated PNG», значит поддержка есть.

SVG (Scalable Vector Graphics) — относительно молодой векторный формат, который поддерживают достаточно много браузеров: Opera с восьмой версии, Safari 3 и выше, FireFox с версии 1.5, а так же все браузеры на движке Gecko, начиная с версии 1.8. Это XML формат, который для меньшего размера можно сжать алгоритмом GZip (формат SVGZ). Обычно, анимацию в SVG делают при помощи внедрённого туда EMCAScript, сменяя кадры из картинок в любом другом формате. Не совсем то, но поддерживается почти любым современным браузером, хотя в стандарте SVG есть собственные методы анимации, по этой теме можно почитать статью на несложном английском «Advanced SVG Animation Techniques».

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

CSS3 text-shadow

Благодаря БлоGноту узнал об официальном открытии сервиса «Я.ру», походил по ссылкам и обратил внимание, что в Opera 9.50 некоторые ссылки как-то интересно подсвечиваются. До того интересно, что я было подумал, что «оперовцы» реализовали CSS-фильтры из Internet Explorer. Оказывается, нет, это работает CSS3-свойство text-shadow (позволяет добавлять к тексту тень), которое на данный момент поддерживается браузерами Safari (и его кузенами), Konqueror, iCab и теперь ещё «Оперой».

Интересно, что тени (text-shadow) можно накладывать на текст по нескольку раз, что даёт интересные визуальные эффекты, например тот, который вы увидите ниже, если ваш веб-браузер поддерживает text-shadow:

Многократные тени — впечатляющая штука

Как обычно, идея позаимствована из Internet Explrorer, там есть фильтр «drop shadow», который занимается тем же самым.

<div style="cursor:hand;height:160px; padding:10px; font:bold 13pt Verdana;
        filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=5, OffY=5, 
        Color='gray', Positive='true')">
Текст с тенью
</div>

Причём, фильтр можно наложить несколько раз (добившись эффекта множественной тени), если окружить текст несколькими тегами и наложить на каждый тег по фильтру.

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

«Опера» ищут траву или «мне это подкинули»

Давайте я вам всю мощь «Оперы» (последней) покажу? А то тут некоторые товарищи user.js для обнаружения «трафки™» начали придумывать. Тем не менее, JavaScript тут не нужен, хватит и CSS. Ведь у «Оперы», наряду с пользовательскими JavaScript, есть и пользовательские CSS. Так что, просто подключаем к «Опере» следующий код и следим за индикатором в левом верхнем углу экрана (рассказывать как подключать я не буду и другим не советую — пусть это будет фильтром).

a[href*="blogowar.ru/soldier"]  img[src*="blogowar.ru/herbs"]
{
        position: fixed; top: 4px; left: 4px; z-index:5000;
        background-image: url(http://blogowar.ru/favicon.ico);
        background-position: 50%;
        background-repeat: no-repeat;
        background-color: #eee;
        display: block;
        width: 25px; height: 25px;
}

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

Тег VIDEO в новой «Опере»

Последний экспериментальный билд «Оперы» (ни в коем случае не устанавливайте его поверх вашей рабочей версии — эта версия основана на одной из альфа-версий Opera 9.50) поддерживает новый тег VIDEO, который входит в предварительную версию стандарта HTML5. Пока в качестве формата видео для этого тега выбран бесплатный Ogg Theora (кстати, недавно я писал о веб-камере, где всё ПО пишется под лицензией GNU, там используется тот же формат). Так же этом билде «Оперы» есть возможность использовать тег VIDEO внутри SVG.

Плохие новости заключаются в том, что этого тег, в текущей версии, доступен только для Windows, но в будущем обещают поддержку и остальных операционных систем.

Самое простое использование тега VIDEO — указание в атрибуте SRC видеофайла, который он должен проиграть и атрибута controls, который указывает должен ли браузер показывать кнопки управления воспроизведением (или разработчик будет управлять видео через соответствующие JavaScript-методы — play, pause, stop). В статье на сайте разработчиков есть несколько примеров.

VIDEO в HTML5 (42.16КиБ)

Стандартные элементы управления (на рисунке) меня совершенно не впечатлили, я бы их использовать не стал, впрочем, дизайн ещё может измениться, да и всегда есть возможность сделать свои кнопки через JavaScript. Больше всего меня поразили методы внедрения видео в SVG — на сайте есть очень несложные в реализации примеры отражения шарика, движущегося внутри видео, в поверхности, наложения на видео фильтров (в примерах — trace edges, grayscale) и клиппинга.

P.S. На домашней странице Chris Double есть ссылки на FireFox3.0alpha9, собранный с поддержкой тега VIDEO.

Оставить комментарий

Тег для календаря

WebForms-2 (8.91КиБ)

Лично для меня событие недели — появление Opera 9.0 Technology Preview 1. Помимо поддержки XSLT, появления аналога настроек FireFox, только сделанных для человека, а не робота, поддержки Canvas, некоторых селекторов CSS3 и прочего, несомненный интерес представляет поддержка стандарта WebForms 2 — обратносовместимого расширения HTML для разработки различных интерфесов ввода. В частности, картинка на скриншоте делается одним-единственным тегом:

<input type="datetime" step="120" name="start">

и это далеко не самая впечататляющая демострация — просмотрите стандарт, хотя бы по диагонали. Жаль, что это всё удасться использовать не ранее чем лет через пять, прежде всего из-за абсолютного главенства Internet Explorer, уверен, что Gecko/Safari подтянутся, а вот от Microsoft такой резвости ожидать не приходится.

Оставить комментарий

Warez. WinAmp3a2, Opera 5.02, WinRAR 2.8b4

Интерфейс программы для редактирования аудио: слева список треков, справа панель управления с таймером, эквалайзером и кнопками воспроизведения.
WinAMP3alpha2. Внешний вид

Хе-хе… Оказывается фирме, выпускающей WinAMP, надоело выпускать версии с двойкой. Ничего никому не сказав, они начали, в тайне от всех, разрабатывать WinAMP версии три. На скриншоте, честно передранном с сайта «Правый щелчок», вы можете видеть альфа-2-версию этого монстра. Судя по обилию «шашочек» на пресловутом скриншоте, нас ждет скачкообразное увеличение дистрибутива еще на порядок. Вот сейчас сижу и думаю — а оно мне надо?

P.S. Подробности — на сайте «Правый щелчок».

Пока Фар-тим всей огромной командой выпускает раз в полгода по бете, великий Евгений Рошаль, в одиночку, неустанно выпускает вот уже четвертую бету своего WinRAR’a. Пофиксены пара проблем в SFX-модуле, исправлена пара-тройка багов. Ничего особенного, но, если вы, как и я, пользуетесь бета-версиями — качайте.

Мультяшный белый кролик в зелёной футболке с белым кругом и зелёной стрелкой вверх, стоящий на жёлтых лапках.
Птичка. Эмблема Парсера

Сайт «Парсера» студии Лебедева растет и пухнет. Парсер обзавелся довольно симпатичной эмблемой, со времени моего последнего появления появились разделы «FAQ», «жаргон», «в действии» и «куда говорить». Вообще-то развитие сайта закономерно, даже если на него снаружи никто не будет ходить. Почему? Парсер активно используется студией и на этот сайт, в случае затруднений, можно отправлять своих собственных сотрудников. Это что-то вроде красиво оформленной документации, выложенной на всеобщее обозрение.

Вообще, я думаю, любая более или менее крупная фирма, занимающаяся разработкой Веб-сайтов, рано или поздно обзаводится сайтом или местом, где свалена в кучу или красиво разложена по полочкам какая-то документация, необходимая для повседневной работы сотрудников. У нас, например, там лежит документация по Perl, PHP, JavaScript, HTML, mSQL, MySQL, PostgreSQL, ну и так далее. Если у вас ничего подобного нет — очень советую завести.

Фирма Opera буквально на днях порадовала нас выходом новой подверсии своего одноименного браузера. В списке «WhatsNew» 5.02 в основном «шашечки»: изменения в мыль-клиенте, Instant Messaging, File Transfer и прочее. Список довольно обширный, но изменения мелкие. Из «ехать» имеются: оптимизация использования памяти, обновления в opera.jar и модели безопасности JavaScript. Как сказано в конце этого документа, «имеется куча обновлений, исправлений и добавлений слишком мелких для упоминания». Я скачаю.

Оставить комментарий

Opera: три в одном

Вы любите многофункциональные вещи? Шампунь, бальзам и кондиционер в одном флаконе? Отвертка, плоскогубцы, нож в одном футляре? Ньюс-ридер, почтовый клиент и браузер в одном пакете? Лично мне, подобного рода вещи кажутся «недоделанными», я не люблю такие решения.

Когда я узнал, что в, замечательный по своему потенциалу, браузер Opera будет встроен клиент ICQ, я не понял, зачем это нужно авторам браузера. Тем более, что этот самый клиент там абсолютно мертворожденный, неудобоваримый и, на мой взгляд, не обладающий должной функциональностью. Вдоволь поудивлявшись, я об этом забыл.

Недавно, запустив Opera, я вновь заинтересовался вопросом «зачем», и вспомнил одну вещь. Идея авторов Opera изготовить среду «все в одном» родилась не сегодня. В Opera есть ньюс-ридер, довольно примитивный и неудобный, есть WAP-клиент, который не открывает половину отечественных WAP-сайтов, и вот, теперь, появился такой же недоделанный ICQ.

Стремление затащить «под крышу» удавшегося продукта какие-то довески из других областей мне знакомы и понятны. Сам я, в свое время, пытался вставить в JUnix возможности доски объявлений, чата и почтовой службы, пока не понял, к чему это приведет, и одним волевым движением не отсек эти ненужные там сервисы. Но эта причина, как мне кажется, лишь сопутствующая.

Судя по всему, разработчики из Opera corp. пошли по пути расширения количества сервисов продукта, наверное надеясь, что так его будет легче продать. Напоминаю, что до 5-й версии продукт был платным и продать один, пусть даже самый навороченный и супербыстрый браузер, это совсем не то же, что продать за ту же цену HTML-браузер, WAP-браузер, news-клиент и ICQ-пейджер в одной коробке.

В этом я вижу причину рождения всего «универсального» и «многофункционального», что пытается худо-бедно заменить все, что оно в себя вмещает по названию и не может вместить по сущности. Этого эрзаца настоящих предметов. Отвертка-раскладное кресло… Но об этом как-нибудь в другой раз, а сегодня я решил всерьез выпороть «Оперу».

И не стоит, кстати, думать, что «бесплатная» Opera начнет в этом вопросе меняться в лучшую сторону. Почему? Потому что.

Во-первых, есть определенная инерция мышления и старые долги. Сразу в момент ничего поменяться не может.

Во-вторых, откройте глаза, люди. «Опера» не бесплатна. Если вы не заплатили 35$ или не применили определенный «довесок», вы увидите в окне браузера баннер, который будет сопровождать вас во время вашего серфинга по всемирной паутине. Это и есть ваша плата за его пользование. Что из этого следует?

Из этого следует, что ничего не изменилось.

Подпункт первый. Почему Opera не поддерживала KOI-8r? Потому что покупатели софта из нас никакие. А почему не будет поддерживать сейчас? Как почему? Какая в браузере крутится реклама? Правильно, буржуйская. А какие же из нас кликеры буржуйской рекламы? Сделали выводы?

Подпункт два. Чтобы продать побольше рекламы нужно распространить побольше копий. Вот и подумайте, что проще — распространить «пусть даже самый навороченный и супербыстрый браузер» или… Ну, вы понимаете.

Так что, увы. Opera так и останется навсегда браузером с хорошим потенциалом и кучей «шашочек». Пока что-то не изменится кардинально.

P.S. Кстати, для прикола, зайдите на opera.ru, а потом на opera.com.

Оставить комментарий

← 1 2 3 4 →