Search
Write a publication
Pull to refresh
0
0
nickon @nickon

Пользователь

Send message

Favicon и заголовок окна

Reading time2 min
Views7.6K
imageВозможно, у вас вызовет сомнение тот факт, что иконка сайта и заголовок окна имеют какое-то отношение к веб-типографике, спешу вас заверить. Имеют! Как корешок книги к её обложке. Не буду лить воду и сформулирую правила оформления иконки и заголовка окна, созданые для повышения удобства при навигации по вкладкам.
Читать дальше →

Тонкости свойства disable у кнопок формы, отправляемой на сервер (Как делать кнопки неактивными)

Reading time3 min
Views71K
Уже неоднократно на хабре (вот в этой публикации и в этой) ставился вопрос о том, что было бы хорошо кнопкам формы, отправляемой на сервер, ставить свойство disabled = "disabled".

Однако, до сих пор так и не разобрались, зачем это нужно и как все-таки это делать. Казалось бы, что может быть проще и о чем здесь вообще можно разговаривать, ан нет — на поверку все оказалось не так тривиально. Сразу замечу, что нижеследующие рассуждения применимы к обеим типам форм: как отправляемым через обычный SUBMIT, так и с помощью AJAX.
Читать дальше →

Фоновый .png и IE 6 — принуждаем к миру.

Reading time2 min
Views2.2K
Известен следующий баг «народного» браузера — картинки в формате .png, содержащие участки с альфа-прозрачностью отображаются неправильно. А именно — область этих участков заливается серым цветом (спасибо dreamhelg за лаконичное описание сути происходящего в данном случае).

Сегодня в в своей RSS-ленте обнаружил ссылку на очередную статью о конфронтации .png и IE. Воспринял ее, пожалуй, как и бóльшая половина удививших заголовок выше — с предубеждением (мол, опять двадцать пять). Тем не менее, выяснилось много интересного. Например, теперь фоновые .png отлично подчиняются свойствам background-position и background-repeat.
Читать дальше →

jQuery для начинающих. Часть 2. JavaScript Меню.

Reading time8 min
Views46K


В первой части были рассмотрены базовые принципы работы селекторов и приведены несколько примеров, в данной статье я постараюсь акцентировать внимание на реализации JavaScript меню для Вашего сайта.

Если Вам готовый код наглядней документации, то переходим от слов к делу, т.е. на страницу с примерами.
Читать дальше →

jQuery для начинающих

Reading time9 min
Views515K
jQuery Logo

jQuery — это замечательный JavaScript Framework, который подкупает своей простотой в понимании и удобством в использовании. Но изучение надо с чего-то начинать, и лично моё мнение — лучше всего начинать с наглядных примеров, и они далее…

Читать дальше →

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

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

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

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

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

Читать дальше →

Отрицательная сторона передачи значений по ссылкам

Reading time3 min
Views12K
Без всякой лирики, прямо: использование ссылок для передачи значений снижает производительность. Мы думаем, что вместо того что бы передавать копию переменной, сценарий передает саму переменную, исходя из чего делаем вывод, что это должно работать быстрее. Увы, это заблуждение. Что бы понять почему давайте разберёмся с тем, как процессор Zend Engine обрабатывает значения.
Читать дальше →

распараллеливаем выполнение задач с помощью stream_select()

Reading time7 min
Views5.3K
Не так уж много кто знает о том, что некоторые задачи в PHP можно заставить выполняться параллельно — и для не этого не нужно прибегать к форкам. В PHP5 есть stream-functions, и среди них — stream_select().

Прочитав статью Cameron Laird (http://www.ibm.com/developerworks/opensource/library/os-php-multitask/index.html?S_TACT=105AGX44&S_CMP=EDU), каждый, кто еще этого не сделал, сможет научиться этой технике, я же в этом топике предлагаю вашему вниманию простой небольшой класс Parastreams, который собсно займется распараллеливанием — а уж что делать с полученными из потоков данными — вы решите сами, указав обработчики данных.

Читать дальше →

Пишем на картинках

Reading time7 min
Views15K
В течение последнего времени что-то часто стали мелькать статьи про обработку изображений на php. Скругленные края уже были, тени были, мокрый пол был, еще куча всего было.

А вот надписей вроде еще не было. Значит будут. :-)

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

Безопасная загрузка изображений на сервер. Часть вторая

Reading time7 min
Views28K
Это вторая часть перевода. Начинать прочтение лучше с первой.

Итак, после применения описанных в первой части методов, мы можем прекратить волноваться? К сожалению, нет. То, какие расширения файла будут переданы транслятору PHP, будет зависеть от конфигурации сервера. Разработчик часто не знает и не контролирует конфигурацию веб-сервера. Мы видели веб-серверы, с такой конфигурацией, что файлы .html и .js выполнялись как php. Некоторые веб-приложения могут потребовать, чтобы файлы .gif или .jpeg интерпретировались PHP (это часто случается, когда изображения, например графы и диаграммы, динамически строятся на сервере самим PHP).

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

Боремся с ручным спамом в блогах при помощи Parasite Eliminator (с 10 ноября сервис открыт для всех желающих)

Reading time4 min
Views1.6K
Итак, свершилось то, чего так долго ждали некоторые посвященные блоггеры. Я открыл для всех желающих Parasite Eliminator – сервис и плагин для Wordpress, благодаря которым в моих блогах нет ручного спама.

10 ноября 2008 года – это черный день российских блогоспамеров (у зарубежных будет другой черный день, я еще не знаю, когда сделаю международную версию плагина).

Как оно работает

Читать дальше →

Интересные возможности языка PHP

Reading time3 min
Views7.9K
В данной статье я хочу рассказать о интересных, но не очень распространенных базовых возможностях языка PHP. Все, что написано далее в том или ином виде присутствует в документации к PHP в разрозненном виде. Автор вполне отдает себе отчет в том, что большинство профессиональных разработчиков все это отлично знает, но новички могут узнать что-то новое.

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

Читать дальше →

Блокировка баннеров в опере.

Reading time1 min
Views24K
С удивлением для себя обнаружил, что многие пользователи не умеют пользоваться встроенной блокировкой баннеров в опере, не смотря на то, что эта функция не нова.

Чтобы заблокировать баннер надо кликнуть правой кнопкой мыши в пустое (можно и с текстом) место страницы, в контекстном меню нажать «Block Content...». В этом режиме кликнуть на баннер(ы), который вы хотели заблокировать, затем «Done».

upd Спасибо всем, кто отписался. Рад, что действительно кому-то помог.
upd2 Для тех, кот хочет получить готовые фильтры баннерных сетей пользователь TiGR публиковал свою заметку.

pChart — строим графики и диаграммы на PHP

Reading time1 min
Views64K
pChart — это PHP-библиотека для создания графиков, гистограмм и диаграмм. В отличие от большинства схожих библиотек, pChart бесплатна (распространяется под GPL лицензией). Из бесплатных главный соперник — Google Chart API.

Помимо класса, который рендерит изображения, есть классы для подготовки данных для построения графиков, а так же встроенный механизм кэширования.

Несколько примеров работы pChart

Производительность кодирования и декодирования serialize и json

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

Для сравнения небольшой скрипт генерирует массив из 1000 элементов, две трети элементов которого — строки, длинной 15 символов (напополам — только буквы и только цифры), а оставшаяся треть — массивы по 50 элементов (также — буквенные и цифровые элементы пополам).

Итог весьма неоднозначен, подробности во второй части.

Подробности под катом

Неблокирующая загрузка JavaScript

Reading time1 min
Views1.7K
Примечание: ниже перевод статьи «Non-blocking JavaScript Downloads», в которой автор рассказывает о проблемах, связанных с подключением JavaScript-файлов, и возможной параллелизации их загрузок. Мои комментарии далее курсивом.

Stoyan StefanovОб авторе: Stoyan Stefanov является веб-разработчиком Yahoo! в группе Exceptional Performance и курирует разработку YSlow — инструмента по измерению производительности. Он также внес значительный вклад в разработку продуктов с открытым кодом, выступал на конференциях и автор технических текстов. Его последняя книга Object-Oriented JavaScript.

Внешние JavaScript-файлы блокируют загрузку страницы и сильно влияют на ее производительность, но существует достаточно простой выход из этой ситуации: использовать динамические теги script и загружать скрипты параллельно, увеличивая тем самым скорость загрузки страницы и улучшая пользовательское восприятие.

читать дальше на webo.in →

PHP + Ajax = Web explorer?!

Reading time1 min
Views3.1K
Сегодня я предлагаю одолеть одну очень популярную задачку open source методом. Задача тривиальная и давно имевшая множество решений. Но для меня лично вопрос еще открыт. А именно: веб-бейзд файл менеджер…

extplorer.png - upload images with Picamatic

eXtplorer — с помощью Ajax (ExtJS, ку-ку!) и PHP наш подопытный отлично справляется…
Что же он умеет?

Блоги про jQuery на русском

Reading time1 min
Views947
Этот пост с моего блога flora.org.ru.

Собираю ссылки на блоги про jQuery. Если у Вас есть свой блог или вы знаете блоги, не упомянутые в этом списке, отпишитесь, пожалуйста, в камментах или в форму на блоге.

Естественно, не просто так собираю ;) Во-первых: ссылка с меня (PR в «зачоте»), реклама блогам, наладить контакт с коллегами по «перу».

Вот что я уже знаю и могу порекомендовать:

LinkExchanger Blog. Есть интересные посты. Нашел для себя полезное.
ajax — всё самое модное!. Так себе. Маловато пока, и стиль изложения оставляет желать лучшего.
JSToolBox. Конкретно про jquery пока маловато, но в общем блог интересный.
Snowcore's. Всего маловато, но надеюсь, что будет больше.
Аякс о-русски. Бывает информация и о jQuery.
Блог Дениса Самарина. Немножко, но интересно.
Update 110408
Сделано легко. Андрей первый приславший недостающий блог. Не стесняйтесь, господа!

Дополнительно хочется отметить:
Хабр. Здесь иногда бывают полезные посты.
TermiT’s Blog. Здесь Геннадий собрал много ссылок на различные материалы по jQuery.
Свобода слова вебмастерского. Эта интересная статья. Еще можно посмотреть «похожие статьи».
Хороший перевод «jQuery для начинающих». Спасибо Антон!

Подборка видео-проигрывателей на флэше

Reading time2 min
Views18K


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

Надеюсь уважаемые комментаторы помогут дополнить список и выявить абсолютного лидера среди проигрывателей.
Уже помогли. Отдельные спасибы Elected, atri, rmb. Кармы всем за мой счет ^_^

Читать дальше

Information

Rating
Does not participate
Date of birth
Registered
Activity