Написав статью про растения отпугивающие клещей я получил большое количество вопросов по поводу других насекомых. И тут уж комары — лидеры. Им этот обзор и посвящается, объединил в одно сообщение все заметки из своего канала с хэштегом #mosquitocide…
Владимир Мухин @vnmukhin
Пользователь
Трафик из Яндекс.Директ: грузите посетителей по центу
5 min
41KМожно ли приводить много заинтересованных посетителей из Директа по 30 копеек за посетителя? Можно и нужно, особенно, если ваш ресурс только встает на ноги и нужно быстро и недорого привести на сайт заинтересованных людей.
Это – пошаговое руководство для тех, кто хочет знать, каким боком из Яндекс Директ (на вполне законных, между прочим, основаниях) привлекать недорогой трафик по 0.01 у.е или 30 копеек за переход.
+110
InfiniteWP: управляем всеми сайтами на WP из одной панели
2 min
11KRecovery Mode
Итак здравствуйте!
На данный момент много (больше 30) наших клиентов заказали себе сайт на популярной CMS WordPress, и остались на поддержке.
Это значит порядка 30 сайтов к которым надо иметь пароли, проверять на наличие обновлений, устанавливать нужные плагины, наполнять материалом и делать хорошо клиенту и его сайту.
И совсем недавно у меня возник вопрос, а что если все это упростить? Собрать все в одном месте?
Сказано — сделано. Искал — нашел.
+35
Аспекты HTML & CSS
4 min
8.7KВ данном материале собраны аспекты, которые полезно знать и помнить html developer-у. Часть вопросов посвящена IE — сам отказался от поддержки IE6, однако знать особенности его поведения не будет лишним.
+37
Валидация в JavaScript с помощью Valid8
2 min
4.9KЧасто приходится «насыщать» интерфейсы с помощью JavaScript. В основном работаю через jQuery, всё нравится, но одна беда – валидация. Постоянно приходится изобретать «велосипед», искать в сети обрывки кода; а ведь хочется написать пару строчек без углубления в детали. Радость не заставила себя ждать: нашёл библиотеку Valid8 (произносится как validate), и, наконец, решил проблему написания кода валидации.
Пользоваться библиотекой оказалось очень просто, чего не скажешь о склеивании jQuery «обрезков» из интернета. Чтобы подключить библиотеку, нужно зайти сюда и нажать заветный Download. Скачается архив, в котором особый интерес представляет файл jquery.valid8.js, его копируем в папку с js файлам нашего проекта и подключаем библиотеку в html:
Допустим у нас есть форма:
Добавляем валидацию (по умолчанию только проверка обязательности заполения), передавая в качестве параметра строку с сообщением об ошибке. Работаем в стиле jQuery:
После того как поле получит фокус и вы из него выйдете не заполнив, объемлющий тег (в нашем случае li) получит класс стиля error.
Для визуализации ошибок добавим CSS в head нашего документа:
Валидация готова. Все.
Как пользоваться
Пользоваться библиотекой оказалось очень просто, чего не скажешь о склеивании jQuery «обрезков» из интернета. Чтобы подключить библиотеку, нужно зайти сюда и нажать заветный Download. Скачается архив, в котором особый интерес представляет файл jquery.valid8.js, его копируем в папку с js файлам нашего проекта и подключаем библиотеку в html:
<script src="/js/jquery-1.6.3.js" type="text/javascript" charset="utf-8"></script>
<script src="/js/jquery.valid8.js" type="text/javascript" charset="utf-8"></script>
Допустим у нас есть форма:
<form><ul>
<li><input type="text" id="inputSome" /></li>
</ul></form>
Добавляем валидацию (по умолчанию только проверка обязательности заполения), передавая в качестве параметра строку с сообщением об ошибке. Работаем в стиле jQuery:
$('#inputSome').valid8("Заполни это поле!");
После того как поле получит фокус и вы из него выйдете не заполнив, объемлющий тег (в нашем случае li) получит класс стиля error.
Для визуализации ошибок добавим CSS в head нашего документа:
<style>
.error input { background:pink; }
</style>
Валидация готова. Все.
+50
CSS хаки
4 min
126KБраузеры и стандарты. Вечная погоня. Из-за несоответствий стандартам, из-за разных способов рендеринга страниц большая часть времени веб-дизайнера уходит на то, чтобы загладить эти несоответствия (использовать хаки). В итоге, вместо эффективной работы, дизайнер вступает в противоестественные отношения с браузерами, теряя драгоценное время.
+194
Нечёткий поиск на клиенте и Soundex
7 min
8.6KSoundex — один из алгоритмов сравнения двух строк по их звучанию. Был разработан чуть менее 100 лет назад Робертом Расселом и Маргарет Оделл. Активно используется в США при диктовке фамилий.
Я давно интересовался применением этого алгоритма и нашёл ему место для фильтрации данных на клиенте, а точнее, для поиска отеля по названию в проекте Островок.ru.
Я давно интересовался применением этого алгоритма и нашёл ему место для фильтрации данных на клиенте, а точнее, для поиска отеля по названию в проекте Островок.ru.
Задача
На Островке все найденные отели передаются на клиент и вся фильтрация и сортировка выдачи происходит в браузере. Необходимо было добавить фильтр по названию отеля.+68
Как безболезненно перейти на GTD
8 min
43KВ качестве эпиграфа: "Выкиньте все из головы!" © D.Allen
Если вы задумались о том, почему вас не устраивает текущее положение дел, то это означает только одно — у вас проблема с ведением дел и то, что ваша действующая система контроля за делами не работает. Есть конечно редкое исключение — на вас взвалено слишком много, чтобы вы могли это исполнить. Но я такого еще не видел.
Серебряной пули, увы, тут нет. Никто за вас ваши дела не сделает, а методика контроля, даже самая действенная, не добавит в рабочие сутки больше часов, чем имеется. Поэтому не стоит надеяться, что все проблемы испарятся, как дым, стоит только установить соответсвующую программу или внедрив ту или иную методику. Все зависит только от вас и больше ни от кого еще.
За что я «люблю» Дэвида Аллена, так это за то, что он сказал много хорошего, дал пищу для ума, но не дал никаких действенных рецептов для внедрения его техники. Я же хочу загладить этот пробел.
Если вы задумались о том, почему вас не устраивает текущее положение дел, то это означает только одно — у вас проблема с ведением дел и то, что ваша действующая система контроля за делами не работает. Есть конечно редкое исключение — на вас взвалено слишком много, чтобы вы могли это исполнить. Но я такого еще не видел.
Серебряной пули, увы, тут нет. Никто за вас ваши дела не сделает, а методика контроля, даже самая действенная, не добавит в рабочие сутки больше часов, чем имеется. Поэтому не стоит надеяться, что все проблемы испарятся, как дым, стоит только установить соответсвующую программу или внедрив ту или иную методику. Все зависит только от вас и больше ни от кого еще.
За что я «люблю» Дэвида Аллена, так это за то, что он сказал много хорошего, дал пищу для ума, но не дал никаких действенных рецептов для внедрения его техники. Я же хочу загладить этот пробел.
+49
Настройка сервера для django-проектов с нуля
6 min
41KХочу поделиться опытом настройки сервера для django-проектов. Так вышло, что мне часто приходится настраивать с нуля VPS-сервера для запуска на них django-сайтов. Как-то мне в голову пришла идея записать пошагово процесс настройки. Оказалось, что “по бумажке” выполнять эти рутинные операции гораздо проще и быстрее — все нюансы записаны, трудно что-то упустить. Дальше больше — я превратил инструкцию в самостоятельный shell-скрипт — запустил и сервер готов. Я думаю, некоторым python-разработчикам, особенно начинающим, будет полезно ознакомиться с содержимым скрипта. С некоторыми доработками вы, возможно, захотите использовать его в своей практике.
+89
Как привлечь пользователей в ваш стартап
6 min
1.4KTranslation
Наиболее частый вопрос, который я слышу от молодых предпринимателей — «Как я заполучил пользователей?»
И вот как я это делаю.
Я сделал блог с 5 миллионами читателей, рекламную биржу которая охватывает больше людей чем Facebook, написал книгу которая была 12-ой на Amazon и сделал еще кучу всяких разных странных вещей, которые популярны и приносят деньги. Я создал новую растущую компанию социальных покупок. Я ангел-инвестор и советник в дюжине разных компаний и одном университете. Я присутствую на нескольких журнальных обложках и тут (оцените количество просмотров и комментарии людей, которые желали бы чтобы их «папочка был так же крут» как я).
И вот как я это делаю.
Обо мне
(испытываешь странное чувство от описания себя, но в случае если вы читаете это и удивляетесь, кто же этот парень… на самом деле я всего лишь пытаюсь помочь).Я сделал блог с 5 миллионами читателей, рекламную биржу которая охватывает больше людей чем Facebook, написал книгу которая была 12-ой на Amazon и сделал еще кучу всяких разных странных вещей, которые популярны и приносят деньги. Я создал новую растущую компанию социальных покупок. Я ангел-инвестор и советник в дюжине разных компаний и одном университете. Я присутствую на нескольких журнальных обложках и тут (оцените количество просмотров и комментарии людей, которые желали бы чтобы их «папочка был так же крут» как я).
+77
jQuery UI как инфраструктура для плагинов
6 min
21KВведение
jQuery UI больше всего известен как набор готовых виджетов. Главное их преимущество, на мой взгляд, — консистентное API: каждый виджет управляется одинаково. Второе их преимущество — они хранят свое состояние: если повторно навесить виджет на элемент, то результатом будет уже существующий инстанс виджета.
Но jQuery UI — это не только набор окошечек и табов (далеко не всеми любимых). Это еще целая инфраструктура для создания своих виджетов: с удобным консистентным API, с хранением состояния и с возможностью наследования. Как ни странно, это для многих новость, в результате чего и появилась эта статья — так же, как это было новостью для меня всего несколько месяцев назад.
+85
Что почитать, чтобы повысить свой уровень JavaScript
3 min
98KTranslation
От переводчика: Я думаю многие читали статью Rey Bango — What to Read to Get Up to Speed in JavaScript, но до хабра обсуждение так и не докатилось. Предлагаю закрыть этот пробел и поговорить о хороших книгах, блогах, тренингах и конференциях, посвященных в первую очередь клиентскому JavaScript и клиентской веб-разработке. Чтобы не копипастить оформляю статью в виде перевода.
Сейчас в рассылке JSMentors JavaScript идет обсуждение книг, который стоит прочитать, чтобы улучшить свои знания. Там было много позитивных отзывов и предложений. Я хочу показать вам те книги и интернет-ресурсы, который я считаю важными и которые помогут вам в обучении. На этой странице я перечислил большое количество источников, разделенных по уровням.
Учтите, что некоторый ресурсы могут принадлежать нескольким уровням и охватывают широкие аспекты языка. Если вы считаете, что я что-то упустил, пожалуйста, дополните меня в комментариях.
Не заставляю вас читать все книги, которые предложены ниже. Эти книги я читал на протяжении многих лет и почерпнул в каждой много полезного. Я их распределяю по категориям, чтобы вам было проще работать с ними. Выберите книги, которые подходят вам.
Сейчас в рассылке JSMentors JavaScript идет обсуждение книг, который стоит прочитать, чтобы улучшить свои знания. Там было много позитивных отзывов и предложений. Я хочу показать вам те книги и интернет-ресурсы, который я считаю важными и которые помогут вам в обучении. На этой странице я перечислил большое количество источников, разделенных по уровням.
Учтите, что некоторый ресурсы могут принадлежать нескольким уровням и охватывают широкие аспекты языка. Если вы считаете, что я что-то упустил, пожалуйста, дополните меня в комментариях.
Не заставляю вас читать все книги, которые предложены ниже. Эти книги я читал на протяжении многих лет и почерпнул в каждой много полезного. Я их распределяю по категориям, чтобы вам было проще работать с ними. Выберите книги, которые подходят вам.
+157
Кроссбраузерный inline-block
4 min
121KTranslation
Разрешите представить вам перевод статьи «Cross-Browser Inline-Block», написанной Райном Доэрти холодным февралем 2009 года. В статье рассказывается о верстке элементов списка с установкой для свойства display значения inline-block. Статья об этом, а также о трудностях, возникающих в процессе достижения результата и о методах их «лечения».
+95
Быстрый старт в MODX Revolution
4 min
60KTutorial
Revolution дорос уже до версии 2.0.8, но большинство разработчиков не спешит его использовать, так как документация еще не полная, да и статей на русском очень мало.
Лично я не нашел ни одной пошаговой инструкции «для чайников», и поэтому решил написать ее сам.
Конечно, это топик для не «совсем чайников», а для людей, которые хоть немного знакомы с Evolution и при переходе на Revolution обломались от всего непривычного, как я. Никаких секретов и ловких методик тут не будет. Обычный how-to с картинками (их довольно много).
Лично я не нашел ни одной пошаговой инструкции «для чайников», и поэтому решил написать ее сам.
Конечно, это топик для не «совсем чайников», а для людей, которые хоть немного знакомы с Evolution и при переходе на Revolution обломались от всего непривычного, как я. Никаких секретов и ловких методик тут не будет. Обычный how-to с картинками (их довольно много).
+29
Украшаем списки
5 min
24KTranslation
В 2002 году Марк Ньюхаус (Mark Newhouse) опубликовал статью «Укрощение списков» ("Taming Lists"), довольно-таки интересную часть которой он посвятил объяснению того, как создавать собственные списки, украшенные псевдо-элементами. Почти десять лет спустя Николас Галлахер (Nicolas Gallagher) изобрел технику, которая использует псевдо-элементы из спрайтов, для создания фоновых изображений.
Сегондя, основываясь на опыте гигантов, мы постараемся развить эту тему. Мы обсудим, как можно украсить элементы без дополнительной разметки, используя только технику CSS-спрайтов. Результат будет работать также в Internet Explorer 6 и 7 версии.
Сегондя, основываясь на опыте гигантов, мы постараемся развить эту тему. Мы обсудим, как можно украсить элементы без дополнительной разметки, используя только технику CSS-спрайтов. Результат будет работать также в Internet Explorer 6 и 7 версии.
+101
PrestaShop 1.4 – новая версия платформы интернет-магазина
5 min
13KВероятно многие знакомы с этой достаточно функциональной и удобной системой.
На днях, а точнее говоря 16го марта, вышла новая версия.
Было приятно прочитать вечером в твиттере:
Here we are guys! PrestaShop v.1.4 Final is out, check it now!
More info tomorrow ;-) Now we're gonna sleep a bit! -->
А на следующий день, как и было обещано, выложен список основных изменений, перевод которого можно найти под катом.
+ скриншоты
+32
audio.js — слушаем музыку в любом браузере
1 min
69Kaudio.js — это javascript библиотека, позволяющая использовать HTML5 тэг повсюду. Что скрывается за словом «повсюду». Если есть возможность использовать тэг , то будет использоваться он, иначе будет подключен плеер на flash. В библиотеку так же входит и UI отображение для этого плеера, которое может быть видоизменено с помощью css.
+71
jCanvaScript: JavaScript библиотека для работы с html5 canvas
3 min
11KВсем доброго!
jCanvaScript — это, как видно из «картинки для привлечения внимания», JavaScript-framework. Не трудно, я думаю, догадаться из названия топика, что предназначение библиотеки — работа с элементом HTML5 canvas. Под катом всех заинтересовавшихся ждет небольшой рассказ о библиотеке и о том, как она создавалась.
jCanvaScript — это, как видно из «картинки для привлечения внимания», JavaScript-framework. Не трудно, я думаю, догадаться из названия топика, что предназначение библиотеки — работа с элементом HTML5 canvas. Под катом всех заинтересовавшихся ждет небольшой рассказ о библиотеке и о том, как она создавалась.
+81
CSS спрайты из командной строки
3 min
4.2KДа, инструменты для создания CSS спрайтов существуют. Я даже сделал один такой сервис. Но они время от времени ломаются (как сейчас, мой). Но и командная многого стоит, и imagemagick. Давайте посмотрим, как мы можем создавать CSS спрайты только из командной строки.
Начнем с того, что у нас есть список отдельных файлов:
Сделаем из них спрайт:
Да, это все. Смотрим результат.
Создание картинки
Начнем с того, что у нас есть список отдельных файлов:
$ ls
1.png 2.gif dot.png phoney.gif tw.gif
- — 1.png
- — 2.gif
- — dot.png
- — phoney.gif
- — tw.gif
Сделаем из них спрайт:
$ convert *png *gif -append result/result-sprite.png
Да, это все. Смотрим результат.
+119
Кроссбраузерные HTML инклуды \(^_^)/
7 min
6.5KПусть у нас есть простенький хтмльчик index1.htm
Как известно, хтмл поддерживает инклуды только через iframe/object, но с ними не очень удобно работать из яваскрипта.
Можно, конечно, прописать в каждую подключаемую страницу скрипт типа такого
Он переносит своё содержимое в родительский документ и удаляет фрейм. Но в случае отключённоо яваскрипта мы получим окошко ифрейма не подстраивающееся под размер содержимого.
<!DOCTYPE html><br><html><br> <head><br> <title>Xbrowser HTML includes</title><br> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><br> </head><br> <body><br> <h1>First file</h1><br> </body><br></html>
Как известно, хтмл поддерживает инклуды только через iframe/object, но с ними не очень удобно работать из яваскрипта.
Можно, конечно, прописать в каждую подключаемую страницу скрипт типа такого
new function(){<br> var frame= window.frameElement<br> if( !frame ) return<br> var parent= frame.parentNode<br> var body= document.getElementsByTagName( 'body' )[0]<br> var child;<br> while( child= body.firstChild ) parent.insertBefore( child, frame )<br> parent.removeChild( frame )<br>}
Он переносит своё содержимое в родительский документ и удаляет фрейм. Но в случае отключённоо яваскрипта мы получим окошко ифрейма не подстраивающееся под размер содержимого.
+38
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity