Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Первые письма рассылки статей сайта по Javascript.


 javascript.aho.ru Javascript в браузерах: разработка, документация, примеры. Выпуск # 2, 2006-05-03
краткое содержание

Первые письма рассылки статей сайта по Javascript.

Статья 1-я. Продолжается показ ссылок, набранных в интернете за последние полгода по актуальным вопросам программирования на Javascript. Представлены ссылки на форумы, в которых происходит общение по веб-технологиям, и краткая характеристика активности посетителей. Статья 2-я. О скрипте падающего снега, который был модифицирован из более старой версии в декабре прошлого года, после пересмотра существующих решений падающего снега и выбора наиболее удачного.
Существует дней: 13
Автор: 12345c
Другие выпуски:
Рассылка 'Упражнения по яванскому письму. Javascript.'
 
Обзор ссылок
21.04.06, 6:10

Форумы в Сети.

Форумы создаются для общения, обмена опытом, решения текущих сложных или простых вопросов. Различаются посещаемостью, оперативностью, качественностью ответов. Содержат много решений типичных и в том числе актуальных задач, которые ещё не разобраны в документации. Содержат ссылки на документацию. По теме языка Javascript их немного по отношению к общей массе программистских форумов. Ссылки на них собраны здесь с краткой характеристикой качества.
Форум: HTML+CSS+JavaScript студии SoftTime, основной "конёк" которой - PHP, Apache и MySQL, по работе с которыми они выпускают книги. Соответственно, на форум приходят обучающиеся и активно задают простенькие вопросы. Активность 20-40 сообщений в день (6-10 тем), в других ветках раз в 5-6 больше. Ценен множеством появляющихся практических советов (весь форум).
Веб-программирование на rsdn.ru, RSS - ветка в 5-20 новых тем, около 20-40 сообщений на очень посещаемом и серьёзном ресурсе форумов, который, к тому же, грамотно автоматизирован - подгружаются сообщения, а не перезагружаются страницы. Ответы отличаются глубоким уровнем понимания, рекомендуется не для простых вопросов.
Vingrad.ru -> Разработка систем для Web -> JavaScripts, RSS, для начинающих - 3-6 сообщений в день, квалифицированные ответы, ценные материалы. Общий форум развит по направлениям.
Xpoint JavaScript - 2-4 сообщения в день. Не исследован, но чувствуется серьёзность. Есть глубокие темы. Общий форум обширный. Есть база знаний на основе статей.
www.relib.com - JavaScript - 1-2 темы в день. Постоянно встречаются ссылки на самые интересные ответы при поиске по актуальным темам в и-нете. Вместе с другой обширной систематикой - ***.
0.5-1 тема в день, но дизайн красивый, надо лучшее взять. На нём же - остальное веб-программирование.
DKlab - 0.5-2 темы в день.
Progz - 0.5 темы в день (там больше по С и Делфи).

Уровень: для всех
-v---

Статья.
23.04.06, 23:51 - 2:06

Скрипт падающего снега.

В скрипте могут падать любые объекты - рисунки с листьями, привидениями, купюрами, баннерами; тексты из одного или многих символов. Они появляются из-за верхней кромки окна и плавно, с переменным темпом, опускаются, "тая" постепенно внизу экрана.

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

Начиналось с того, что осенью прошлого года пользователи на форумах периодически жаловались на недостатки выбранных и установленных скриптов - то один скрипт работает в размере высоты экрана на документе (при прокрутке ниже снежинок не видно), то другой скрипт не работает в Опере. Ближе к Новому Году меня заинтересовала эта тема - есть ли в Сети достаточно совершенный и современный скрипт, чтобы в случае подобных вопросов предлагать его. Поиск и анализ показал, что вариантов скриптов есть порядка 5-7 (с разными моделями построения), в котороых разными способами пытались устранить недостатки. Подвариантов (реализаций), конечно, больше, но мы говорим сейчас о заложенных в алгоритм методах. Часть из них страдает откровенно синусоидальным движением снежинок (или прочих объектов), часть - "эффектом первого экрана", описанным выше. Имеется общий недостаток, что реализация множества движущихся объектов на JS сильно нагружает процессор и требует оптимизации. Существуют реализации на Джаве и Флеше. Чтобы найти многочисленные примеры, воспользуйтесь поиском по ключевым словам "falling snow javascript".

Взяв наиболее подходящий по естественности движения скрипт, я устранил тот же недостаток первого экрана и немного усложнил движение снежинок (опять же, необходимость в наиболее простоми быстром алгоритме не позволяет развернуться фантазии в плане усложнения). Затем, показалось полезным иметь режим полупрозрачных объектов, чтобы они не мешали читать текст на странице. Затем поступила пара пожеланий от пользователей, которые ещё улучшили свойства скрипта. Первое пожелание было о том, чтобы прозрачность объектов плавно повышалась, а исчезали они, становясь полностью прозрачными. Скрипт стал немного больше нагружать процессор (на 30-50%, об этом ниже), но эффект действительно стал интересным. Внезапное пропадание наблюдаемого объекта воспринимается хуже, чем плавное. Пример работы скрипта и архивную копию можно посмотреть на http://javascript.aho.ru/example/xmp002/falling-snow.htm . С этой страницы можно изменить параметры скрипта, не переписывая скрипт, пользуясь кнопками и инструкциями на ней. Уменьшить число снежинок, увеличить размер, вставить URL других изображений.

Рассмотрим его потребительские свойства. Предел желаний вебмастера с таким скриптом упирается в быстродействие системы с браузером, в которой скрипт работает. Проще говоря, от мощности процессора пользователя. Но не только. Как показали испытания, предел нагрузки зависит от типа браузера и видеокарты. На лучшей видеокарте он показывает лучшие результаты.

Как увидеть предел нагрузки? На странице демонстрации имеются пояснения, как изменить число снежинок и другие параметры. При увеличении числа объектов в окне или при открывании копии окна нагрузка на процессор возрастает, что наглядно можно увидеть на графике нагрузки процессора, кликнув Ctrl-Shift-Esc в системе Windows XP/2000, а затем 3-й таб (закладку) с надписью Performance (производительность). Без графика, при перегрузке процессора, т.е. когда график "зашкаливает за 100%, наблюдается замедление темпа падения снежинок, отрывистые движения, влияние на скорость исполнения других задач в системе. Следовательно, задача стоит в том, чтобы процессор (самый слабый из предполагаемых для большинства посетителей) не перегружался, хотя бы при 1 открытом окне со скриптом. (Вот и очередная не простая, но решаемая задача для опытных разработчиков - определить нагрузку процессора по замедлению скрипта и уменьшить программно параметры, чтобы перегрузки не возникало.)

Запуск примера показывает, что разумное количество снежинок для скрипта (переменная snowmax) - не более 50. Но есть ряд других факторов, кроме количества.

  • скорость обновления окна (stepTime);
  • максимальный размер рисунка или буквы (snowmaxsize);
  • наличие полупрозрачности. Так как она влияет на нагрузку, есть возможность её отключить (opac=1). Например, опытный вебмастер может написать условие уменьшения числа объектов в Firefox, так как в нём прозрачность "тормозит" больше.

Второе полезное пожелание было: сделать эффект приближения снежинок по мере их падения. Немного модифицированная версия скрипта с этим эффектом находится на http://javascript.aho.ru/example/xmp002/falling-snow-BrownMov.htm . Название файла показывает, что предполагалось изменить алгоритм движения для большей естественности, но пока дело до этого не дошло (случайные модификации скорости объектов). За зрелищность приходится платить нагрузкой процессора - он нагружается на 50-80% сильнее по сравнению с первым скриптом.

Впоследствии (наверное, ближе к зимнему сезону) мы снова вернёмся к теме падающего снега на страницах, чтобы попробовать развить этот или подобный скрипт до лучших потребительских свойств. Если есть пожелания, идеи и желание улучшений - пишите автору через Vingrad.ru: наши скрипты, где обсуждался этот скрипт.

Уровень - для пользователей
-v---

 javascript.aho.ru , © I.Svetlov, 2005-2006 
Текущая очерёдность плана статей (подписчики могут корректировать через голосование).
1. Варианты проверки правильности заполнения полей ввода: диапазон чисел, только числа, не кириллица, подтверждение отправки формы.
2. Автоматический выбор группы опций в мультиселект-списке, многоуровневое меню в <select>,
3. Как писать тексты с доступом через JS без экранирования специальных символов (&lt; и другие).
4. select и list - в них есть много общего. Как и с меню навигации. Эмулятор селекта.
5. Древовидное меню, подход к данным, отделение данных от представления.
6. Многонедельный календарь со ссылками. (По списку строится календарь.)

Если обнаружилось, что приходили не все письма, пожалуйста, сообщите об этом автору рассылки, чтобы помочь разобраться, какие коды некоторые почтовые серверы не пропускают. Было замечено, что HTML-коды одного примера не проходили через POP-сервер с программой SpamAssassin версии 3.1.0 .

 


В избранное