Вторая часть двухэтажной статьи. Здесь рассказывается о конкретных документах, их назначении, и так, всякие мелочи. Первую часть можно прочитать по ссылке.
Ростислав Сирык @rost
User
jQuery для JavaScript-программистов
12 min
71KTranslation
Примечание: ниже расположен перевод статьи «jQuery for JavaScript programmers», в которой автор высказывает свое мнение об этой библиотеке, ориентируясь, в первую очередь, на продвинутых программистов, и приводит несколько десятков примеров ее использования.
Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.
Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.
Большинство современных обзоров jQuery делают упор на дизайнеров и неопытных разработчиков. Я попытаюсь объяснить, почему она также нужна и опытным программистам.
Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.
Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.
Большинство современных обзоров jQuery делают упор на дизайнеров и неопытных разработчиков. Я попытаюсь объяснить, почему она также нужна и опытным программистам.
+45
sIFR — расширяем возможности типографики xhtml
2 min
3.4K
В этой заметке пойдет речь о довольно интересной технологии sIFR (Scalable Inman Flash Replacement). Путем комбинации Flash JavaScript и CSS на вашей XHTML-страничке можно создать текст, выполненный абсолютно любым шрифтом. При этом xhtml абсолютно валиден, текст будет выделяться, а отсутствие flash или JavaScript приведет всего лишь к отображению текста стандарным шрифтом с CSS стилями.
Заметка не претендует на абсолютно полное описание технологии, но в конце вас ждут ссылки на документацию и небольшой пример, который вы сможете скачать одним файлом и «поиграться» с ним на досуге.
+15
Десять преимуществ Unobtrusive Javascript
5 min
3.7K
+19
jQuery для самых маленьких или динамическая загрузка страниц (AJAX)
1 min
3.6KВ один прекрасный день понадобилось мне сделать динамическую загрузку из базы. До этого я ничего подобного не делал и не интересовался этим вопросом. Я начал искать информацию на эту тему. Нашёл, что нужная мне задача делается при помощи AJAX.
Перерыл очень много различных фреймворков и остановил свой выбор на ныне популярном jQuery. Всё бы хорошо, но принципа работы я сразу не понял, и сходу сделать простую задачу, аля загрузить одну страницу в другую, я не смог. Искал в интернете хоть какую-то помощь. Помог офф. сайт, благо там доков хватает. И вот, разобравшись в этом вопросе, решил сделать небольшой примерчик для «самых маленьких» (для новичков), которые никогда не работали с этой библиотекой.
Для профессионалов он (пример) покажется смешным и простым, но для людей, не имеющим представления что и как и почему — он поможет. Пример снабжен комментариями в коде. В нём показано как загрузить одну страницу в другую, не перезагружая первую, так же немножко прошёлся по базовым основам классов.
Скачать пример можно вот тут
Перерыл очень много различных фреймворков и остановил свой выбор на ныне популярном jQuery. Всё бы хорошо, но принципа работы я сразу не понял, и сходу сделать простую задачу, аля загрузить одну страницу в другую, я не смог. Искал в интернете хоть какую-то помощь. Помог офф. сайт, благо там доков хватает. И вот, разобравшись в этом вопросе, решил сделать небольшой примерчик для «самых маленьких» (для новичков), которые никогда не работали с этой библиотекой.
Для профессионалов он (пример) покажется смешным и простым, но для людей, не имеющим представления что и как и почему — он поможет. Пример снабжен комментариями в коде. В нём показано как загрузить одну страницу в другую, не перезагружая первую, так же немножко прошёлся по базовым основам классов.
Скачать пример можно вот тут
+12
Блоги про jQuery на русском
1 min
947Этот пост с моего блога flora.org.ru.
Собираю ссылки на блоги про jQuery. Если у Вас есть свой блог или вы знаете блоги, не упомянутые в этом списке, отпишитесь, пожалуйста, в камментах или в форму на блоге.
Естественно, не просто так собираю ;) Во-первых: ссылка с меня (PR в «зачоте»), реклама блогам, наладить контакт с коллегами по «перу».
Вот что я уже знаю и могу порекомендовать:
LinkExchanger Blog. Есть интересные посты. Нашел для себя полезное.
ajax — всё самое модное!. Так себе. Маловато пока, и стиль изложения оставляет желать лучшего.
JSToolBox. Конкретно про jquery пока маловато, но в общем блог интересный.
Snowcore's. Всего маловато, но надеюсь, что будет больше.
Аякс о-русски. Бывает информация и о jQuery.
Блог Дениса Самарина. Немножко, но интересно.
Update 110408
Сделано легко. Андрей первый приславший недостающий блог. Не стесняйтесь, господа!
Дополнительно хочется отметить:
Хабр. Здесь иногда бывают полезные посты.
TermiT’s Blog. Здесь Геннадий собрал много ссылок на различные материалы по jQuery.
Свобода слова вебмастерского. Эта интересная статья. Еще можно посмотреть «похожие статьи».
Хороший перевод «jQuery для начинающих». Спасибо Антон!
Собираю ссылки на блоги про jQuery. Если у Вас есть свой блог или вы знаете блоги, не упомянутые в этом списке, отпишитесь, пожалуйста, в камментах или в форму на блоге.
Естественно, не просто так собираю ;) Во-первых: ссылка с меня (PR в «зачоте»), реклама блогам, наладить контакт с коллегами по «перу».
Вот что я уже знаю и могу порекомендовать:
LinkExchanger Blog. Есть интересные посты. Нашел для себя полезное.
ajax — всё самое модное!. Так себе. Маловато пока, и стиль изложения оставляет желать лучшего.
JSToolBox. Конкретно про jquery пока маловато, но в общем блог интересный.
Snowcore's. Всего маловато, но надеюсь, что будет больше.
Аякс о-русски. Бывает информация и о jQuery.
Блог Дениса Самарина. Немножко, но интересно.
Update 110408
Сделано легко. Андрей первый приславший недостающий блог. Не стесняйтесь, господа!
Дополнительно хочется отметить:
Хабр. Здесь иногда бывают полезные посты.
TermiT’s Blog. Здесь Геннадий собрал много ссылок на различные материалы по jQuery.
Свобода слова вебмастерского. Эта интересная статья. Еще можно посмотреть «похожие статьи».
Хороший перевод «jQuery для начинающих». Спасибо Антон!
+11
Настройка и использование новых функций Firefox 3.0
4 min
2.8KКак уже писали ранее, Firefox 3.0 вышел вчера в 21.00 по Москве. Так как имеются некоторые проблемы с загрузкой с официального сайта, предлагаю альтернативное зеркало оригинальной русской версии:
Рассмотрим настройку и использование некоторых новых функций.
Рассмотрим настройку и использование некоторых новых функций.
+89
Как не подорвать репутацию
1 min
680При проектировании взаимодействия внимание проектировщика должно быть обращено не только на дизайн экранных форм, их взаимосвязь и соответствие спроектированного пользовательским целям и задачам, но и на взаимодействие пользователей внутри проектируемой системы. Особенно актуально такая задача стоит при проектировании взаимодействия внутри социальных сервисов.
Недавно произошло интересное обновление в библиотеке шаблонов Yahoo. Теперь в ней можно найти не только визуальные шаблоны, но и шаблоны для построения репутационной модели. В библиотеке подробно и с примерами описывается, как определять тип такой модели для своего сервиса, как строить «карьерную лестницу» пользователей, какую информацию участники хотят видеть о других членах сообщества и т.п. Важно, что описываются не только верные, но и ошибочные способы применения описанных в библиотеке принципов.
Недавно произошло интересное обновление в библиотеке шаблонов Yahoo. Теперь в ней можно найти не только визуальные шаблоны, но и шаблоны для построения репутационной модели. В библиотеке подробно и с примерами описывается, как определять тип такой модели для своего сервиса, как строить «карьерную лестницу» пользователей, какую информацию участники хотят видеть о других членах сообщества и т.п. Важно, что описываются не только верные, но и ошибочные способы применения описанных в библиотеке принципов.
+26
Скринкаст. Сборка коллективного блога своими руками. Часть 2
1 min
820
Вторая часть отличнейшего скринкаста, созданного rrromka!
В скринкасте приводятся дополнительные настройки системы, собранной в предыдущем скринкасте. Длительность 20 минут, вес 70 мегабайт.
+19
Оптимизация размера файлов: уплотняем поток
1 min
1.4KПосле ряда статей на тему минимизации размера файлов и распределения их по нескольким хостам у меня возник вопрос: какое оптимальное соотношение между числом (или размером) «встроенных» и внешних файлов? Какая часть страницы должна загружаться вместе с основным HTML-файлом, а какая — только с внешними файлами? Для решения этих и ряда других вопросов я собрал тестовое окружение в виде одной странице, для которой применены различные оптимизационные техники (заодно и посмотрел, как реально все эти техники влияют на скорость загрузки страницы).
Начал я с обычной страницы, для которой использовалось только gzip-сжатие HTML-файла. Это самое простое, что может быть сделано для оптимизации страницы (на самом деле, причиной было то, что мне не хотелось специально отключать сжатие для одного хоста, а потом его включать обратно :). Данная страница бралась за основу, с которой сравнивалось все остальное.
читать дальше на webo.in →
Шаг первый: простая страница
Начал я с обычной страницы, для которой использовалось только gzip-сжатие HTML-файла. Это самое простое, что может быть сделано для оптимизации страницы (на самом деле, причиной было то, что мне не хотелось специально отключать сжатие для одного хоста, а потом его включать обратно :). Данная страница бралась за основу, с которой сравнивалось все остальное.
читать дальше на webo.in →
+26
14 модулей для Drupal, о которых вы должны знать
2 min
12KВ продолжении темы о Drupal’е хочу предоставить несколько расширенный обзор модулей. С помощью некоторых из них можно строить уже не просто standalone-блог, а сообщество с элементами социальности. Список, конечно же, не претендует на полноту и основывается лишь на личном опыте автора.
Итак, вот они:
Итак, вот они:
+25
Новый движок JavaScript от Apple
1 min
2.3KНесколько дней назад разработчики Safari анонсировали новый движок JavaScript — SquirrelFish (БелкоРыба, или для большей русско–звучности Рыба–Белка).
SquirrelFish значительно опережает по производительности JS машины, которые используется в WebKit 3.0 и 3.1 (порядка 60% быстрее). Более того, он на 46% быстрее, чем SpiderMonkey, движок используемый Mozilla в текущих версиях FireFox, и на 52% быстрее Tamarin, который используется в Adobe Flash 9 и портируется для использования в FireFox.
David Mandelin написал очень интересный пост, анализирующий то, за счет чего SquirrelFish добился таких результатов. Коротко — используя технологии не очень стандартные для «классического» интерпретатора (в особенности, построив интерпретатор с использованием регистров, а не стэка и прямую адресацию потоков).
По следам этого анализа появились даже предположения, что Apple расстанется с AppleScript как средой скриптования в Mac OS и полностью перейдет на JavaScript.
SquirrelFish значительно опережает по производительности JS машины, которые используется в WebKit 3.0 и 3.1 (порядка 60% быстрее). Более того, он на 46% быстрее, чем SpiderMonkey, движок используемый Mozilla в текущих версиях FireFox, и на 52% быстрее Tamarin, который используется в Adobe Flash 9 и портируется для использования в FireFox.
David Mandelin написал очень интересный пост, анализирующий то, за счет чего SquirrelFish добился таких результатов. Коротко — используя технологии не очень стандартные для «классического» интерпретатора (в особенности, построив интерпретатор с использованием регистров, а не стэка и прямую адресацию потоков).
По следам этого анализа появились даже предположения, что Apple расстанется с AppleScript как средой скриптования в Mac OS и полностью перейдет на JavaScript.
+35
Плагины для лиса в прямом эфире
6 min
1KВчера ночью мне не спалось, и я решил сделать что-то полезное (в кои-то веки). Поскольку приносить пользу окружающим можно лишь принося пользу себе, я попытался облегчить себе жизнь: создать плагин, мониторящий изменение некоторых чисел на одной странице (нечто вроде «количества непрочитанных комментариев в топиках, за которыми следишь» и «количества писем», если больше нуля — повод пойти и прочитать эти новые комментарии. Эти числа выводятся на двух известных коллективных блогах вверху страницы, но узнать об их изменении их состояния можно лишь обновив эту страницу — никакого механизма почты-rss-и т.п. не предусмотрено. Ну, надеюсь, понятно объяснил). Через полтора часа была готова более-менее стабильная версия плагина, и я буду рад рассказать вам о том, как повторить мой подвиг в любое время года.
Итак, на повестке дня: Создаем плагины для FireFox быстро и чисто.
Итак, на повестке дня: Создаем плагины для FireFox быстро и чисто.
+63
Revecter- новый ECMAScript фреймворк для SVG
1 min
1.1KСегодня дебютировал ECMAScript фреймворк, созданный для работы с SVG документами в интернете.
Из их блога:
Между тем этот релизвсего-лишь демонстрация функциональности ядра фреймворка, нежели прямого исполнения, он показывает свой потенциал.
Фрэймворк обеспечивает наследование с помощью прототипов (prototype-esque ), упрощает перемещение объектов и выполнение других основных задач. Кроме этого он имеет мощный класс анимации, используемый для кроссбраузерной анимации, или формально несуществующих вещей.
Досадно, что не поддерживается IE на данный момент, но поддержка планируется.
http://revecter.googlecode.com/
Из их блога:
SVG мощный формат, нуждающийся в представление публике. Уже было доказано, что svg имеет потенциал (хабр), и мы нацелены представить его с помощью фрэймворка revecter
Между тем этот релиз
Фрэймворк обеспечивает наследование с помощью прототипов (
Досадно, что не поддерживается IE на данный момент, но поддержка планируется.
http://revecter.googlecode.com/
+15
Вышел jQuery UI 1.5 RC1
1 min
1.2KКак сообщает нам наш официальный источник — вышел первый релиз-кандидат jQuery UI — набора виджетов и визуальных эффектов для известного в узких кругах JS-фреймворка jQuery.
Как утверждает источник, RC1 довольно стабилен, а точнее — это самая стабильная версия из тех, которые вообще выпускались. :) Так что — спешите обновляться.
Ах да, чуть не забыл — в некоторых местах поменялось API (в draggable и resizable модулях так точно поменялось), так что будьте всё же осторожны и предусмотрительны.
Как утверждает источник, RC1 довольно стабилен, а точнее — это самая стабильная версия из тех, которые вообще выпускались. :) Так что — спешите обновляться.
Ах да, чуть не забыл — в некоторых местах поменялось API (в draggable и resizable модулях так точно поменялось), так что будьте всё же осторожны и предусмотрительны.
+27
Аддоны для Visual Studio
1 min
3.4K
От себя хочу порекомендовать следующие:
- ReSharper — помогает осуществлять анализ и генерацию кода, рефакторинг и многое-многое другое… По-моему, этот аддон заслуживает отдельной статьи на Хабре.
GhostDoc — поможет Вам автоматически генерировать XML описания для функций, переменных и т.п.
Smart Paster — вставит и отформатирует тескт из буфера обмена как Comment, String, StringBuilder или Region.
P.S.
Надеюсь, что комментарии к этой записи помогут нам всем найти новые, нужные и полезные аддоны.
+14
Проблемы пользовательских поддоменов
2 min
3.5KО том как реализовывать разделение пользователей по своим поддоменам тут уже писалось. Не были только затронуты плюсы и минусы идеи выноса логина на поддомен. Итак.
+31
+15
21 тезис Образования 2.0
4 min
7.1K
27 марта, Москва. Компания Google провела экспертный круглый стол и конференцию для преподавателей и специалистов в области образования под общим названием «Образование 2.0».
Конференция началась с открытой дискуссии, в которой приняли участие Дмитрий Зимин (Фонд Династия), Ольга Полякова (Гимназия 1518), Анна Зеленцова (Международный форум лидеров бизнеса), Илья Щуров (Компьютерра), Светлана Конюшенко, (РГУ им. И. Канта, Калининград) и Дмитрий Песков (МГИМО). Кроме того, в дебатах приняли активное участие присутствовавшие в аудитории эксперты и представители образовательного сообщества России.
1. В эпоху интернета нет того кто умнее всех. Эра компьютеров закончилась. Сегодня работают не компьютеры, а коммуникации. Появилась сетевая экономика и сетевое образование.
+8
Yahoo: высокопроизводительные Веб-страницы. Часть 2
1 min
720Translation
Примечание: ниже перевод свежей презентации от Yahoo! «High Performance Web Pages» с новыми советами по оптимизации. Yahoo известна своими статьями на тему оптимизации клиентской части и является мировым лидером в этой области. Однако, с уходом Julien Lecomte (ведущего специалиста отдела оптимизации, автора YUI Compressor) в Apple ситуация может измениться. Посмотрим.
Мои комментарии далее курсивом. Я постарался, по возможности, расставить ссылки на упоминаемые в презентации инструменты и связанные статьи.
читать дальше на webo.in →
Мои комментарии далее курсивом. Я постарался, по возможности, расставить ссылки на упоминаемые в презентации инструменты и связанные статьи.
Этот медлительный веб
- Мы используем Интернет для решения наших повседневных задач
- Мы все хотим испытывать при этом комфорт
- Мы не выносим медленные страницы (хотя есть варианты)
- На 500 мс медленнее = 20% уменьшение трафика (Google)
- На 100 мс медленнее = 1% уменьшение продаж (Amazon)
Разговор на сегодня
- Как улучшить производительность веб-страниц
- Фокус на клиентской части
- 14 отличных советов для быстрых страниц
- … и еще 20!
читать дальше на webo.in →
+36
Information
- Rating
- Does not participate
- Date of birth
- Registered
- Activity