Pull to refresh
2
0
Андрей Гордеев @Andrey_Gordeev

User

Send message

Расширяем Sizzle (псевдоселекторы)

Reading time2 min
Views12K

Введение


Как известно, Джон Резиг (John Resig) создал абсолютно новый движок селекторов под названием Sizzle(selector[, context]).

Его можно использовать как отдельно от jQuery (всего 4Kb в формате min/gzip), так и вместе с ним.

Наряду с большой производительностью он обладает и хорошей расширяемостью, о которой я и хочу сейчас рассказать.
Псевдо-селекторы
Total votes 28: ↑25 and ↓3+22
Comments20

Полный AJAX. Теория и Примеры. Фишки и Фичи

Reading time8 min
Views34K
По многочисленным просьбам начинающих (и не только) AJAX разработчиков, решил выделить часть своего времени для описания некоторых хитростей и приемов, которыми пользуюсь при построении сложных, динамических веб-приложений. Статья представляет из себя смесь теоретических выкладок и практических примеров.

Наибольшие трудности при построении сайтов c применением AJAX возникают при реализации механизма AHAH (Asynchronous HTML and HTTP). Особенно выполнение на лету подгружаемых Javascript-ов. Также есть куча дополнительного «гемороя» при разработке AJAX сайтов и веб-приложений. Вы можете ознакомится с детальным описанием некоторых существующих проблем. Из-за указанных сложностей, многие разработчики отказываются от более насыщенного внедрения AJAX.

Однако, мало кто знает, что перечисленные проблемы можно решить.
Читать дальше →
Total votes 112: ↑95 and ↓17+78
Comments141

Три редкоиспользуемые оси в XPath

Reading time2 min
Views79K
Основная мощь языка XPath заключается в осях, позволяющих добраться до любого элемента в исходном документе. Рассмотрим применение таких редкоиспользуемых осей, как ancestor, descendant и self.

ancestor


Задача: получить атрибут id элемента-«прадеда» foo.

Обычно в таких случаях начинают рисовать лестницы:

../../../@id

Такая запись плоха тем, что малопонятна без знания исходного xml. Автор рекомендует в подобных случаях использовать более информативное выражение:

ancestor::foo[1]/@id

Эта запись не только даёт представление об искомом элементе, но и продолжает работать даже в том случае, когда текущий элемент изменил своё положение в дереве.
Читать дальше →
Total votes 63: ↑61 and ↓2+59
Comments16

Регистрация в качестве Индивидуального предпринимателя для freelance'ера: Зачем и как?

Reading time3 min
Views17K
После моей статьи «Freelance: ожидания, реальность, признание» сразу несколько человек обратилось ко мне с вопросом о юридических проблемах в работе freelance'ра. Скажу сразу, я далеко не юрист, но в свое время оформлял себе ИП, именно для freelance'а, а потому имею опыт, и некоторые знания в этой сфере, и могу ими поделиться. Хотя конечно мои выводы могут быть ошибочны, и у юристов эта статья наверняка вызовет легкую улыбку (или приступ раздражения), скажу еще раз, я просто хочу поделиться опытом, и рассказать как я регистрировался в качестве предпринимателя, и что мне дала эта бумажка.
Читать дальше →
Total votes 66: ↑62 and ↓4+58
Comments112

Регистрация ООО — «одно окно». Нюансы

Reading time5 min
Views1.1K
Итак, разберем по частям регистрацию компании на примере общества с ограниченной ответственностью (ООО) на упрощенной системе налогообложения. В подробности вдаваться не буду, описания этого процесса можно найти, а вот некоторые нюансы можно узнать только из своего, блин, жизненного опыта. Подробнее:
Нужно подать документы в ФНС № 46 (список документов в яндексе). Мой совет — запишитесь на подачу, узнайте телефон (www.n46.ru) и запишитесь. Вы сэкономите кучу времени и нервов.
Через неделю вам отдадут документы в составе: 2 свидетельства, копии устава и учредительного договора, что-то еще и вот тут начинается самое интересное.

Поехали!

Читать дальше →
Total votes 94: ↑92 and ↓2+90
Comments79

По поводу диакритических знаков

Reading time8 min
Views23K
Перевод занятной статьи On diacritics (David Březina) из блога I love typography.

Проблема диакритических знаков, используемых в центральной Европе, не очень то и актуальна для большинства из нас (со своими чёрточками и точечками над «Й» и «Ё» вроде бы нормально разобрались), но для дизайнеров, работающих с зарубежными клиентами, будет весьма познавательно. Да и вообще, как говорится, для общего развития…

По поводу ошибок и прочего — ругайте переводчика (то бишь меня). Но не сильно. Пишу и перевожу как могу :)

Публикуется с разрешения автора.

Читать дальше →
Total votes 67: ↑66 and ↓1+65
Comments16

Плагин jquery.keyfilter.js

Reading time1 min
Views3.3K
Очень нравится мне возможность ограничивать набор вводимых символов в полях ввода с помощью регулярного выражения.

Эта функциональность существует в Ext.JS, но этот каркас несколько тяжеловесен для большинства сайтов. Поэтому я нарисовал плагин для jQuery, выполняющий тот же функционал.

Примеры, страница проекта
Total votes 36: ↑34 and ↓2+32
Comments92

Закрепляем jQuery — 25 отличных советов

Reading time19 min
Views168K
Перевод отличной статейки. Думаю, будет полезна как новичкам, которые только приступили к использованию jQuery, так и тем, кто уже какое-то время с ним работает. А кого-то, возможно, заставит глянуть эту чудесную библиотечку. Многие советы имеют отношение не только к jQuery, но и к JavaScript в целом. Лично для меня была весьма и весьма познавательной, посему и захотелось донести это «до масс». Перевод не дословный, но передающий смысл и максимально адаптированный к русскому языку.

Далее все написано от имени автора оригинальной статьи.

Введение


jQuery прекрасен. Я использую его вот уже почти год и, хотя я и был достаточно впечатлен в самом начале, он нравится мне все больше и больше по мере использования и по мере того, как я узнаю о том, как он устроен внутри.

Я не эксперт в jQuery. И даже не претендую, поэтому, если встретите ошибки, смело поправляйте меня и вносите предложения по улучшению (поправлять и присылать поправки нужно автору статьи, а не перевода — зам. пер.).

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

Содержание


  1. Загружайте фреймворк с Google Code
  2. Используйте «шпаргалку» (cheat sheet)
  3. Соединяйте все ваши скрипты и уменьшайте размер файла
  4. Используйте возможности Firebug для ведения логов
  5. Минимизируйте операции выборки в пользу кэширования
  6. Сводите манипуляции с DOM-деревом к минимуму
  7. Оборачивайте все в единый элемент, когда речь идет о любой вставке в DOM
  8. Используйте «id» вместо классов, где это возможно
  9. Задайте контекст своим селекторам
  10. Используйте последовательности вызовов методов с умом
  11. Научитесь правильно использовать анимацию
  12. Научитесь назначать и делегировать события
  13. Используйте классы для сохранения состояния
  14. Еще лучше — используйте встроенный в jQuery метод data() для сохранения состояния
  15. Пишите собственные селекторы
  16. Подготавливайте HTML и модифицируйте его, когда страница загружена
  17. Используйте «отложенную загрузку» (lazy loading) для определенного контента для выигрыша в общей скорости и преимуществ для SEO
  18. Используйте служебные функции jQuery
  19. Используйте «noconflict» для переименования глобального объекта «jquery», когда используете его с другими фреймворками
  20. Как узнать что картинки загружены?
  21. Всегда используйте последнюю версию
  22. Как проверить, что элемент существует?
  23. Добавляйте класс «JS» в элемент «html»
  24. Возвращайте «false» для отмены поведения по-умолчанию
  25. Короткая запись для события готовности документа


Rock'n'Roll!
Total votes 188: ↑182 and ↓6+176
Comments109

Создание чистого CSS-шаблона для Joomla 1.5 — часть 2.1

Reading time8 min
Views11K
Продолжаю перевод цикла статей из блога Compass Designs о создании шаблона для Joomla 1.5, выполненного по современным веб-стандартам. Это вторая часть цикла. Первую часть можно прочитать здесь:
Создаем шаблон Joomlа по стандартам — часть 1
Создаем шаблон Joomlа по стандартам — часть 1 (продолжение)

Читать дальше →
Total votes 1: ↑0 and ↓1-1
Comments0

Готовим макет для клиента. Часть I: Гладить или нет?

Reading time10 min
Views12K

Готовим макет для клиента. Часть I: Гладить или нет?


Часть I: Гладить или нет?
Часть II: Если гладить, то как?

Недавно, просматривая портфолио различных дизайнеров на популярном фрилансерском портале, я заметил одну особенность.

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

Важно другое. Верхняя половина с шапкой из нереально синего неба, чрезмерно зелёной травки, блестящих хромированных небоскрёбов и пластмассовых людей с приклеенными улыбками — всё это очень нравится клиентам, и сами дизайнеры пузырятся от гордости, показывая подобные коллажики своим коллегам. А вот нижняя половина… Тут, в большинстве случаев, как раз всё очень и очень уныло.

Мне бы хотелось в рамках нескольких статей поговорить на тему подготовки макетов для показа клиентам, а также о том, какие трудности поджидают дизайнера на пути утверждения макета.
Читать дальше →
Total votes 124: ↑104 and ↓20+84
Comments95

JavaScript, AJAX, Socket и Flash/ActionScript — исследуем вопрос передачи данных в AJAX-приложениях

Reading time8 min
Views5.5K
socket_1667_128Как то в последнее время я начал активно повышать свои навыки и знакомиться не только и не столько с новыми технологиями. Например, я уже более-менее освоил Java, а именно — занимаюсь сетевыми сервисами. Также начал работать с ActionScript 3, хотя мое мнение относительно применимости в AJAX-приложениях Flash-компонентов не изменилось — их надо использовать там, где они дают максимальное преимущество, а вот вся «обвязка», например, интерфейс пользователя, можно сделать при помощи стандартных технологий. При разработке AJAX-приложений у разработчика есть достаточно большой выбор для решения задачи обмена данными с сервером. В основном, общение с сервером заключается в…
Читать дальше →
Total votes 52: ↑47 and ↓5+42
Comments44

jQuery для начинающих. Часть 4. Селекторы

Reading time11 min
Views216K


Последнее время мне всё чаще задают вопрос как выбрать тот или иной элемент в DOM'е, и данный пост будет сплошь посвящен селекторам в jQuery, возможно большинство из них Вы видели в различных источниках, но собрать их воедино все же стоит…
Читать дальше →
Total votes 83: ↑79 and ↓4+75
Comments30

jQuery для JavaScript-программистов

Reading time12 min
Views70K
Примечание: ниже расположен перевод статьи «jQuery for JavaScript programmers», в которой автор высказывает свое мнение об этой библиотеке, ориентируясь, в первую очередь, на продвинутых программистов, и приводит несколько десятков примеров ее использования.

Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.

Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.

Большинство современных обзоров jQuery делают упор на дизайнеров и неопытных разработчиков. Я попытаюсь объяснить, почему она также нужна и опытным программистам.

Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments121

Планарий. Легкое управление делами

Reading time2 min
Views1.2K
image Еще с момента поступления в университет я был постоянно в раздумьях о том, что дел-то как-то много стало, и в голове держать их все вместе сложно, поэтому пора уж заняться планированием. Было перепробовано множество способов, начиная с ежедневника и аутлука, заканчивая всевозможными сайтами. И чаще всего, тот или иной инструмент не устраивал по ряду причин.
Читать дальше →
Total votes 91: ↑87 and ↓4+83
Comments194

Firebug: Part 4 — profiling

Reading time2 min
Views2.9K
Как хороший код поможет избежать отладки в дебаггере, так он же поможет вам никогда не применять навыки, полученные в этой статье.
Если на вашем сайте у вас «умирает» браузер от перегрузки javascript'ом, то вам просто необходимо это прочитать(и применить тоже).

Весь цикл: Console, Commands, Debugging ,Profiling

Читать дальше →
Total votes 33: ↑28 and ↓5+23
Comments9

Кроссбраузерная одноцветная полупрозрачность

Reading time3 min
Views12K
В этой статье я рассмотрю метод создания блоков с одноцветным полупрозрачным фоном.
Например, таких:


Сразу оговорюсь, что я не буду использовать opacity и абсолютное позиционирование, чтобы разместить контент поверх полупрозрачного блока.
Читать дальше →
Total votes 192: ↑186 and ↓6+180
Comments80

И снова Fugue!

Reading time2 min
Views912
image
Я возможно уже вам все уши прожужжал про этот сет, но не смог снова его не упомянуть. Да-да, фугия снова обновилась. Данная версия 1.4.3 хоть и не последняя но все же уже актуальная для каждого. Наконец в нем есть все иконки необходимые для оформления вашего веб-приложения. Я понимаю что в сети есть множество полезных сетов иконок, но этот почему то затронул меня больше всего.
читаем дальше...
Total votes 72: ↑63 and ↓9+54
Comments32

Fugue Icons 1.4.1 — 1406 шт. отличнейших иконок

Reading time1 min
Views1.6K
Давно уже не постил ничего на хабре, но, добавляя в информацию о проекте ссылку на используемые иконки, заметил, что эти самые иконки обновились (с сегодняшнего дня их целых 1406 шт.), о чем не преминую сообщить.

Встречаем Fugue Icons 1.4.1 (лицензия, скачать)
Total votes 54: ↑35 and ↓19+16
Comments26

Памятка дизайнеру сайтов

Reading time10 min
Views245K
Вторая версия статьи, расширенная и дополненая.

Большая часть готовилась для моего выступления на «РИТ: Клиентские технологии», куда я, к сожалению, не доехал.

 

Памятка дизайнеру сайтов

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

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

Читать дальше →
Total votes 453: ↑444 and ↓9+435
Comments231

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity