Pull to refresh
49
47.9

User

Send message

16 действительно полезных решений для JavaScript

Reading time16 min
Views7.2K
© shamansir.wordpress.com

Представляю вам набор функций, которые у меня лежат в отдельном файле utils.js — это функции, которые я использую чаще всего. Они стараются быть кроссбраузерными и проверены на IE6/7, FF2 и Safari 2 и на боевой, сложной системе, в XHTML документах. Должны, по идее, работать, и на других, но не очень старых версиях браузеров — проверку браузера я использовал только в исключительных случаях. Некоторая часть из них, конечно же, просто нарыта на просторах интернета (где — обычно указано) и заимствована ввиду открытости, а большая часть — сконструирована из многих ресурсов и своих идей (и советов коллег), дабы работать на ура — поскольку часто в разных скриптах не учитываются разные тонкости, которые, тем не менее — при ближайшем рассмотрении — оказываются общностями :), ну и быть довольно читабельными.
Узнать
Total votes 89: ↑79 and ↓10+69
Comments73

Штрихи, штришки и штришочки

Reading time6 min
Views96K
Практика показывает, что если тире или кавычки — это первое, что изучают при появлении интереса к «типографике» (а на самом деле — к грамотному набору текста), то правильное употребление апостро́фа, знаков минут и секунд, знака ударения вызывает почему-то бо́льшие затруднения. На самом деле, всё очень просто, и статья будет довольно короткой. Всё, о чём будет сказано ниже, относится к современной русской традиции типографики.
Поехали!
Total votes 89: ↑80 and ↓9+71
Comments94

PNG vs. Internet Explorer

Reading time1 min
Views5.5K

В двух словах

В догонку появившейся недавно статье о преодолении привередливого отношения браузера Internet Explorer 6-й версии по отношению к .png, опишу еще один рецепт.Речь идет о разработке TwinHelix под банальным названием IE PNG Fix.
Читать дальше →
Total votes 2: ↑2 and ↓0+2
Comments35

Текстура для веб-дизайна

Reading time1 min
Views13K
Последние время мне часто приходится искать разнообразные текстуры. Поэтому я решил опубликовать несколько сайтов с большим выбором текстур.

Первым в этом списке я выбрал http://www.textureking.com/ — красивый и понятный дизайн сайта, а также хороший выбор текстур которые разделены на 14 категорий.

Следущим будет http://www.cgtextures.com/ — огромное количество текстур и их категорий (вожможно он и получше textureking :), вам решать.
Читать дальше →
Total votes 75: ↑68 and ↓7+61
Comments63

Crop & Resize на страницах ваших сайтов

Reading time3 min
Views32K
Пройдясь по хабра-поиску выяснил, что готового решения для кропа-ресайза изображений, на движке JavaScript/HTML/CSS еще не предлагалось. Поэтому, позвольте представить вашему вниманию модуль для ваших сайтов, частично реализуюший функционал редактирования, распространенный на фото-хостингах.

К делу

Внешне задумка выглядит так:


Читать дальше →
Total votes 117: ↑102 and ↓15+87
Comments122

Переменные сессии на яваскрипте без кук

Reading time3 min
Views30K
Мне никогда не нравилась реализация кук в Яваскрипте. Объем ограничен (4х20 Кб на домен), хранить возможно только в строковом типе, синтаксис для установки и получения кук избыточно сложен.

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

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

Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments135

Вредная верстка

Reading time9 min
Views74K
Как определить, что сайт сверстан качественно?
Есть много статей о том, как делать хорошо, но совсем нет – о том, как делать не надо, ведь даже валидный и кроссбраузерный сайт может быть сверстан отвратительно.

Из этой статьи вы узнаете:


  • О плохих приемах современной верстки;
  • О том, как даже не будучи профессионалом, за 5 минут определить плохо ли сверстан сайт или нет.


Читать дальше →
Total votes 203: ↑175 and ↓28+147
Comments339

Моя Убунта — II

Reading time4 min
Views1.1K
Ну что ж, раз пошло такое дело — значит, пришло время поговорить и нам — о башмаках, кораблях, сургучных печатях, королях и капусте, а также легкой доработке напильником дистрибутива Ubuntu, дабы получить внешний вид, описанный в этом посте — по многочисленным просьбам телезрителей, рассказав о том, что и как я делал.


Сразу скажу, что любителям поорать в коментах прошу не читать — там много графики, объяснения для новичков, вам это все равно будет неинтересно. В любом случае, я вас предупредил ;-)
Итак, чуть меньше лирики — чуть больше дела. С чего начать? Начать нужно с инвентаря. Нужно-то нам совсем ничего! Сегодня нам потребуются:
  1. Компьютер с установленным Ubuntu 7.10/8.04. На самом-то деле, почти наверняка пойдет любой другой дистрибутив с GNOME в качестве менеджера окон рабочего стола (desktop environment manager) и ...
  2. Compiz — установленный и стабильно работающий. Это важно — без него всей этой красоты не получится
  3. Третьим, фактически же — последним пунктом программы — выступает фон рабочего стола. Открою страшный секрет… хотя нет, открою его потом :-) Так вот, как именно найти этот фон я рассказывать не буду, поскольку с негодованием отметаю все претензии в лицензионной нечистоплотности, оставляю это в качестве домашнего задания (искать по слову leopard wallpaper, размер — extra large, первая картинка). Я взял ее с домашнего компьютера (так как в рабочее время им никто не пользуется, я имею полное право любоваться на картинку на работе :-) )
Господа, хватит тупо и молча миносовать и срать в карму! Будьте добры объясниться — или хотя бы прочитать дисклеймер в конце поста — и спасибо хорошим людям, которые сперва читают, потом комментируют, и только потом плюсуют или минусуют

Собственно, настройка
Total votes 80: ↑67 and ↓13+54
Comments79

Blueprint

Reading time4 min
Views27K
Blueprint — довольно интересный фреймворк для верстки сеткой, который я лично считаю удобным, потому как он позволяет довольно просто создавать весьма сложные страницы, при этом не думая об IE.

Со страницы проекта на Google Code скачиваем архив.

В архиве будет папка blueprint/ там и содержатся основные файлы фреймворка, их и подключаем к странице:

<link rel="stylesheet" href="css/blueprint/screen.css" type="text/css" media="screen, projection">
<link rel="stylesheet" href="css/blueprint/print.css" type="text/css" media="print"> 
<!--[if IE]><link rel="stylesheet" href="css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->

Читать дальше →
Total votes 54: ↑50 and ↓4+46
Comments73

Пряник для пользователей правильных браузеров

Reading time3 min
Views2.3K
Объясняя однажды преимущества таких браузеров, как firefox и opera перед всеми любимым IE, я осознал насколько не очевидны их преимущества при рассказе о них.

  • Табы большинство пользователей воспринимают как нечто заумное — они привыкли переключаться между окнами, ища нужное внизу на панельке. У многих она для этого специально делается двойной а то и тройной ширины.
  • Обработка полупрозрачных PNG для нормальных людей звучит вообще как страшное шаманское заклинание. И конечным потребителям, в итоге, глубоко плевать, насколько на сайте сделана честная полупрозрачность и на скольких костылях она держится. Это целиком проблемы вебмастеров. Юзерам о них можно даже не упоминать.
  • CSS 3 уровня непонятен пользователям точно так-же как и полупрозрачность в картинках — они с этим не сталкиваются и им все равно.
  • Проверка орфографии понятна уже многим. Несмотря на то, что обычно в качестве аргумента приводят проверку орфографии в ворде, расстановку им заглавных букв и прочие мелочи, простые пользователи даже сами замечают различия между IE и другими браузерами — у меня было несколько вопросов, мол почему дома и на-работе ВКонтакт выглядит по-разному.
  • Быстродействие особенно актуально для пользователей рискнувших перейти на IE7 — разница в скорости ощущается невооруженным взглядом. Обычно такие пользователи быстро откатываются на IE6, но достаточно серьезным аргументов для них будет упоминание о дате выпуска IE6 — многих это подталкивает к переходу на более новые браузеры.

Во всем этом списке нет ни одного железного аргумента для простого пользователя, чтобы уйти с IE6. Для разработчиков, стремящихся использовать новые возможности браузеров, это большая проблема. Но кого она волнует кроме них? Поэтому проводятся всевозможные акции из серии «Заблокируй для IE доступ на свой сайт», которые приносят какой-то эффект, но этого явно недостаточно. Я хочу предложить еще один способ для ослабления позиций «самого любимого» браузера, который кардинально отличается от подобных акций.


Читать дальше на хабре
Total votes 83: ↑74 and ↓9+65
Comments176

Верстка без float'ов

Reading time2 min
Views8.7K
Существует много разных способов css разметки. Некоторые базируются на абсолютном позиционировании, другие используют float'ы. Первый метод плохо поддерживает «резиновость» макета, тогда как второй это неплохой способ разметки.

Но, как и многие мощные инструменты, float'ы имеют свои изъяны. Для начала, верстка на основе float'ов не такая простая к пониманию, а также float'ы есть источником многих багов (в основном в ИЕ), что делает их не идеальным вариантом в погоне за кроссбраузерностью.

Итак, речь далее пойдет о
семантически корректном методе верстки
Total votes 77: ↑61 and ↓16+45
Comments174

Эхо или печать?

Reading time3 min
Views37K
Вопрос: «Что быстрее — echo или print?» не перестаёт будоражить умы тех, кто считает себя профессиональным программистом на PHP. Руководство пользователя осторожно упоминает об имеющемся различии, но отсылает к статье стороннего авторства; та, в свою очередь, утверждает, что echo быстрее, но не приводит доказательств; трудно найти объективное сравнение, и всё это придаёт проблеме некий мистический ореол, на что клюют многие и многие.

Так не будем же оставаться в стороне и постараемся раз и навсегда разгадать эту загадку!

Читать дальше →
Total votes 168: ↑158 and ↓10+148
Comments105

Как выявить медленные SQL запросы?

Reading time2 min
Views92K
Это случалось с каждым из нас при разработке веб-сайтов или приложений, использующих MySQL в качестве базы данных. Производительность внезапно сильно падала, и вы не имели понятия, почему это случилось. Этому могут быть причиной многие факторы (сильная загрузка CPU, нехватка дискового пространства, или слабая пропускная способность канала), но также это может быть и неоптимизированный запрос, выполняемый намного дольше, чем должен.

Как узнать, какие из запросов выполняются дольше всего?
В MySQL есть встроенный функционал для ведения логов медленных запросов.
Узнать, как включить этот функционал
Total votes 34: ↑31 and ↓3+28
Comments57

MoreCSS — Сделаем css полноценным!

Reading time1 min
Views813
morecss-logo.png

MoreCSS — небольшая библиотека JavaScript, весом всего 14кб, для решения повседневных задач, таких как создать всплывающие окна, сделать вкладки меню, таблицы и списки с оформлением «зебра»-стиль… и т.д. С помощью этой библиотеки Вы сможете это делать средствами обычного css.
Читать дальше
Total votes 54: ↑51 and ↓3+48
Comments29

Руководство по использованию PDF:: API2 (Perl) для начинающих

Reading time1 min
Views3.4K
  1. Название и версия
    Используемая терминология
    Руководство
    1. Преимущества формата PDF
      Основные принципы работы с PDF-документами через PDF::API2
      Создание PDF-документа
      Открытие существующего документа PDF для редактирования, импортирование данных
      Работа с текстовыми данными
      1. Управление шрифтами при создании PDF-документа
        Работа с цветом
        Добавление текстаГрафические данные в PDF — документе
        1. Вставка графических изображений в PDF — документ
          Импортирование PDF — документов
          Создание графических изображений средствами PDF::API2 Вывод PDF-документа пользователю, сохранение документаПриложение к руководству
          1. Примеры кода
            Полезные ссылки

Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments18

Introducing xdebug

Reading time9 min
Views46K
Эта статья первая из серии статей, описывающих xdebug, свободной библиотеки для разработчиков PHP. xdebug – это расширение для PHP, написанное Derick Rethans, одним из разработчиков языка PHP. В данной статье описывается как установить xdebug и рассказывается о его базовых возможностях. В последующих частях мы детальнее взглянем на главные возможности xdebug, а именно трассировку, профайлинг, отладку кода.
Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments60

Эластичные шаблоны

Reading time4 min
Views19K

Большинство дизайнов ориентировано на использование фиксированных значений при верстке: ширина и высота блоков, размер шрифта. Это позволяет сверстанному шаблону «не разваливаться» при изменении масштабов просмотра и сохранять свойство кроссбраузерности. Однако в этом есть один большой минус – при большом разрешении экрана маленькие фиксированные блоки теряются на большой площади и остаются незамеченными. Тут даже не спасет «резиновая» верстка, т.к. сайт будет выглядеть еще более нечитабельным, например на 19'' мониторах при разрешении большем 1280 по ширине. Для меня это актуально, т.к. на ноутбуке 17'' с разрешением 1400х800 просматривать «резиновый» сайт очень неудобно. И желание оставаться на таком сайте отпадает быстро. Существует ли способ, позволяющий управлять масштабами не только текста, но и всего сайта?
Читать дальше →
Total votes 75: ↑69 and ↓6+63
Comments112

Эффект тени для картинки с помощью CSS

Reading time1 min
Views11K
Думаю многие из вас сталкивались с задачей создания двойной/нестандартной рамки для изображений на сайте. Частично я описал технику создания таких рамок здесь. Но я не упомянул (а если честно, то и сам тогда не подумал об этом) в той статье один интересный нюанс.
С помощью этой техники, можно создавать эффект тени для картинки, буквально в пару строк. Что нужно сделать?
Читать дальше →
Total votes 32: ↑23 and ↓9+14
Comments12

Визуализация данных на CSS

Reading time3 min
Views2.7K
Визуализация данных графиков, диаграмм в основном решается с помощью флэш и некоторых языков программирования. Являются ли эти способы единственными? Давайте попробуем реализовать эту задачу с помощью CSS.

Предисловие
В этом примере я не буду использовать ни JavaScript, ни любые другие языки. Все, что мне нужно это хорошая разметка и код CSS.
Таким образом, наша цель состоит в том, чтобы представить данные таблицы в виде диаграммы. Можно отметить, что данные диаграммы – это объект из 2х элементов, непосредственно зависимых друг от друга. Поэтому, лучшим решением в отношении структуры и семантики будет использование списков определений.
Почему? Ну, для начала, это список элементов. Несмотря на то, что список является линейным, мы можем обозначить заголовки определений (элементы dt) как пункты по оси X и описание определений (элементы dd) как значения по оси Y.
Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments20

Information

Rating
142-nd
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Lead
Git
Linux
OOP
Java
REST
Spring Boot
JDBC
Hibernate
Java Spring Framework
Apache Kafka