О чём это?

Snippet — небольшой фрагмент програмного кода, иллюстрирующий решение конкретной задачи, пригодный для повторного использования. Большинство из 92 статей на этом сайте посвящено вопросам веб-программирования и администрирования веб-серверов.

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

Слияние JQuery-объектов

22.08.2010 22:39 / Артём Волк / 63 просмотра

Часто для уменьшения количества запросов к DOM-дереву нужные элементы заранее выбираются и сохраняются в локальных переменных в виде экземпляра объектов JQuery. Например, таким образом:

var someNodes = $('.some-class');
var someOtherNodes = $('.some-other-class');

Как быть, если нужно применить какую-либо JQuery-функцию (например, hide() к элементам из обеих переменных?

целых два варианта... :)

Сниппет без решения: 120 dpi fix + Opera 10.5

22.08.2010 12:54 / Артём Волк / 50 просмотров

Приём «шрифты в em» прижился у многих верстальщиков и продолжает использоваться несмотря на постепенный отказ от поддержки IE6 и перехода большинства браузеров на full page zoom. Для сохранения размера шрифта таким, как его задумал дизайнер при переключении масштаба в операционной системе применяется другой известный приём «120 dpi и шрифты в em» (хотя это и не совсем правильно, т.к. пользователь увеличивает шрифт для удобства чтения).

Судя по всему в Opera 10.5x (проверяли на 10.51 и 10.54) не работает следующая конструкция из CSS Media Queries:

@media all and (min-resolution: 120dpi) {
	...
}

В более ранних и более поздних версиях этого браузера приём работает.

Конвертация timestamp'a (unixtime) в экземпляр класса DateTime

07.08.2010 13:31 / Артём Волк / 103 просмотра

Встроенный PHP-класс DateTime наконец-то определил стандартный интерфейс для работы с датой и временем в PHP. Однако, конвертация значения даты в формате Unix time в экземпляр этого класса не так очевидна.

Пока найдено два способа...

Как вставить Tab (символ табуляции) в textarea

07.08.2010 12:54 / Артём Волк / 76 просмотров

В случае использования на сайте для подготовки контента разметки наподобие Markdown может понадобиться ввести символ табуляции в <textarea>. По умолчанию нажатие клавиши Tab обрабатывается браузерами как переход к следующему элементу формы, чтобы изменить это поведение необходимы дополнительные компоненты, например JQuery-плагин Tabby.

Получение значения единственного элемента ассоциативного массива в JavaScript

25.07.2010 13:47 / Артём Волк / 121 просмотр

В разрабатываемом приложении серверная часть предоставляла данные в JSON-формате примерно такого вида:

var json_data = {
	features: {
			feature1: { 4401: 'Искомое значение 1'},
			feature2: { 4056: 'Искомое значение 2'},
			feature3: { 1123: 'Искомое значение 3'},
			...
	}
};

По логике приложения нужно было перебрать все значения объекта features и получить строки отмеченные на листинге как искомые. Проблема заключалась в том, что нужная переменная является значением единственного элемента ассоциативного массива (например, feature1) с заранее неизвестным ключом (например, для feature1 значение 4401 заранее неизвестно).

читать дальше...

Выборка данных по датам с помощью GROUP BY, включая даты для которые данные отстутствуют

04.07.2010 23:38 / Артём Волк / 131 просмотр

К примеру, в БД MS SQL Server есть таблица Logs в которую заносятся данные об активности пользователей. По этим данным необходимо сделать выборку, например, подсчитать количество действий пользователей по дням месяца. По выходным и праздникам пользователи приложением не пользуются, поэтому при использовании обычного GROUP BY в результате выборки будут представлены только те даты, для которых нашлись данные, что, например, для построения графиков не подходит.

решение...

Отображение тега label в Editor Template'е в ASP.NET MVC

04.07.2010 23:09 / Артём Волк / 170 просмотров

В ASP.NET MVC 2 появилась удобная возможность — определять шаблоны для отображения и редактирования свойств модели определённых типов (как стандартных, например String или DateTime так и пользовательских). Шаблоны применяются, например, с помощью HTML-хелперов Html.EditorFor() и Html.DisplayFor(). Однако, чтобы добраться до мета-информации о редактируемом свойстве модели внутри подобных шаблонов придется постараться.

читать дальше...

Класс для хранения настроек приложения на ActionScript3

26.06.2010 11:52 / Артём Волк / 142 просмотра

Для хранения настроек ActionScript-приложения удобно использовать класс-Singleton, к которому на лету можно добавлять свойства. Решение по мотивам примера из книги Advanced ActionScript 3 with Design Patterns.

читать дальше...

Ошибка Validation of viewstate MAC failed (Проверка состояние вида MAC не удалась) или 404 во время PostBack при использовании HTML-тега base

14.06.2010 16:19 / Артём Волк / 236 просмотров

Проблема возникает, если для страниц сайта на ASP.NET Web Forms определён тег <base />, например, следующим образом:

<base href="http://example.com" />

Страницы, находящиеся на том же уровне, что и URL в теге <base /> будут работать нормально (например, такая страница: http://example.com/SomePage.aspx), но стоит попытаться использовать ещё одну страницу с тем же именем в подпапке, например, http://example.com/Folder/SomePage.aspx и при первом PostBack'e возникнет ошибка «Validation of viewstate MAC failed (Проверка состояние вида MAC не удалась)». В случае, если на сайте существует только одна страница с таким именем, т.е. или http://example.com/Folder/SomePage.aspx, или http://example.com/SomePage.aspx ошибка будет уже стандартной HTTP-ошибкой 404.

Причина ошибки в том, что тег <form> будет сформируется следующим образом:

<form name="aspnetForm" method="post" action="SomePage.aspx" id="aspnetForm">

Из-за тега <base /> результирующий URL для отправки формы будет неверным: http://example.com/SomePage.aspx, где часть http://example.com/ берется из тега <base />, а SomePage.aspx из атрибута action формы.

Способ исправления этой ошибки аналогичен решению проблемы с PostBack'ом при использовании URL Rewriting'а.

Генерация тестовых данных средствами MySQL

06.06.2010 16:48 / Артём Волк / 210 просмотров

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

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


Страница 1 из 10