Выдвигающаяся с любой стороны панель

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

1. CSS

.panel {
	padding: 20px;
	width: 250px;
	background: #eeeeee;
	border: #282828 2px solid;
	font-family: Georgia;
}

2. Подключение jQuery

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>

3. Подключение jQuery TabSlideOut

Узнать больше


jQuery плагин ограничения количества вводимых символов в textarea

Пример как ограничить количество вводимых символов в TEXTAREA, т.е. используя JavaScript (и библиотеку jQuery) эмитировать действие атрибута maxlength.

Нам понадобится использовать библиотеку jQuery. Как обычно:

<script src="путь/к/jquery.js" type="text/javascript"></script>

Код плагина с небольшими комментариями:

<script type="text/javascript">
// создаём плагин maxlength
jQuery.fn.maxlength = function(options) {
  // определяем параметры по умолчанию и прописываем указанные при обращении
  var settings = jQuery.extend({
    maxChars: 10, // максимальное колличество символов
    leftChars: "character left" // текст в конце строки информера
  }, options);
  // выполняем плагин для каждого объекта
  return this.each(function() {
    // определяем объект
    var me = $(this);
    // определяем динамическую переменную колличества оставшихся для ввода символов
    var l = settings.maxChars;
    // определяем события на которые нужно реагировать
    me.bind('keydown keypress keyup',function(e) {
      // если строка больше maxChars урезаем её
      if(me.val().length>settings.maxChars) me.val(me.val().substr(0,settings.maxChars));
      // определяем колличество оставшихся для ввода сиволов
      l = settings.maxChars - me.val().length;
      // отображаем значение в информере
      me.next('div').html(l + ' ' + settings.leftChars);
    });
    // вставка информера после объекта
    me.after('<div class="maxlen">' + settings.maxChars + ' ' + settings.leftChars + '</div>');
  });
};
</script>

Узнать больше


Выбор строк из диапазона дат в MySQL

Опять что-то с памятью моей 🙂

Очередная заметка о том какой послать SQL запрос для выборки записей с нужной датой или промежутком дат.

Выбрать записи с сегодняшней датой

SELECT * FROM name_table WHERE  DATE(date_column) = DATE(NOW());

где:
name_table — имя таблицы над которой производим операцию выборки;
date_column — колонка с датой.

DATE() — вернет дату без времени.
NOW() — возвращает текущую дату и время (мы используем сочетание DATE(NOW()) для удаления времени).

Узнать больше


Закругление углов у изображения

Хочу написать метод закругления краев у картинки. В итоге мы должны получить что-то похожее на то что написано в статье Наложение изображений на PHP, но заменим библиотеку GD на Imagick.

Плюс данного метода в том, что не нужно подготавливать 2 разных картинки и потом их «склеивать»/«смешивать», все делается на лету.

Вот код который это реализует с небольшими коментами:

<?php
/* задаем изображение над которым производим манипуляции */
$image = $_SERVER['DOCUMENT_ROOT'].$_GET['argv'];
/* считываем изображение над которым производим манипуляции */
$im = new Imagick( $image );

Узнать больше


Операции с колонками в MySQL

Года, склероз и все такое, по-этому решил записать на заметочку пару примеров работы с колонками MySQL.

Скопировать данные из столбца в столбец в пределах 1-й таблицы:

update name_table set new_column=`old_column`;

где:

name_table — имя таблицы над которой производим операцию;

new_column — колонка куда нужно скопировать данные;

old_column — колонка из которой нужно скопировать данные.

Скопировать все данные из 1-й таблицы в другую:

Узнать больше


Кроссбраузерное решение прозрачности блока на CSS

Вы можете быстро и легко применить прозрачность любого div-элемента, добавив следующий код CSS в таблицу стилей:

.opacity {
	filter: alpha(opacity=50);
	-khtml-opacity: 0.5;
	-moz-opacity: 0.5;
	opacity: 0.5;
	}

Данный пример устанавливает прозрачность блока .opacity на 50%. (изменив, на пример, 50 на 70, а 0.5 на 0.7 выставится прозрачность в 70% соответственно)

Перед использованием не забудьте удалить комментарии, а то были случаи…

Спасибо за внимание.


Памятка сисадминам на отдыхе

—||—

Hе устанавливай локальных сеток. Сетевые устpойства могут вызвать конфликты с Рыбнадзоpом, а это лечится потом долго. Лучше ставь локальную удочку на беpегу, но только не из поpтов. В поpтах большой тpаффик, погонят.

—||—

Если кpиво установилась палатка – надо не полениться и пеpесобpать. Если устанавливаешь впеpвые – обязательно изучи мануал, там много нетpивиального.

—||—

Скачивать воду лучше из колонок, она посвежее: та, что идет в комплекте с ландшафтом, не всегда коppектно pаботает — может потом отвлекать частыми пpеpываниями.

Узнать больше


Виртуальные коды клавиш (Keyboard Codes)

Вот понадобились мне коды нажимаемых клавиш, ладно по памяти еще помню, что Enter это 13, Esc — 27, а Space — 32 и все, дальше память подвела. А нужен то был код Ctrl-Enter.
По-этому делаю себе пометочку с виртуальными кодами клавиш (keycodes) стандартной клавиатуры.

Table: Keypad Keys

   ---------------------------------------------------------------------
    Key                       Code(linux)  Code(windows)  Code(windows)
                                 DEX          DEX            HEX
   ---------------------------------------------------------------------
    Uparrow, Ctrl-E               5           38            0x26
    Dnarrow, Ctrl-X               2           40            0x28
    Leftarrow, Ctrl-S            19           37            0x25
    Rightarrow, Ctrl-D            4           39            0x27
    Home, Ctrl-A                  1           36            0x24
    End, Ctrl-F                   6           35            0x23
    PgUp, Ctrl-R                 18           33            0x21
    PgDn, Ctrl-C                  3           34            0x22

Узнать больше


Заглушка для ie6. Ваш браузер устарел.

С учетом стремительного роста интернет технологий старые (устаревшие) браузеры могут некорректно отображать вашу страничку. К такому браузеру относится и Internet Explorer 6, который не может предоставить все возможности, которые могут предоставить современные браузеры, а скорость его работы в несколько раз ниже!

Сервисы Google (Google Docs, Google Sites, Google Apps, Youtube), социальная сеть В Контакте так же постепенно уходят от IE6 и уже поставили необходимые заглушки с предложением пользователю перейти на более новые (современные) браузеры. С 2010 года, уже сама Microsoft активно начала рекомендовать пользователям отказаться от IE6. Бедный ослик…
Узнать больше


Как запретить браузеру выделять текст

Решение на запрет выделения текста с использованием JavaScript:

function preventSelection(element){
  var preventSelection = false;

  function addHandler(element, event, handler){
    if (element.attachEvent)
      element.attachEvent('on' + event, handler);
    else
      if (element.addEventListener)
        element.addEventListener(event, handler, false);
  }
  function removeSelection(){
    if (window.getSelection) { window.getSelection().removeAllRanges(); }
    else if (document.selection && document.selection.clear)
      document.selection.clear();
  }
  function killCtrlA(event){
    var event = event || window.event;
    var sender = event.target || event.srcElement;

Узнать больше