Переменные сессий без применения cookies

15 мая 2008

Такой инструмент хранения данных как cookies зачастую избегают из-за многих проблем связанных с их использованием - ограниченный размер хранимых данных (4 х 20Kb на один домен), хранить можно только строки, и, кроме того все эти данные добавляются в заголовки запросов браузера, что не способствует производительной работе сайта. Решение этой проблеме я нашел вчера - скрипт sessvars.js способен устанавливать и хранить данные сессий при помощи JavaScript и без использования cookies. Вместо cookies используется свойство window.name, прелесть которого в том, что оно сохраняет свое значение при перезагрузке страниц и может хранить до 2 мегабайт данных. Также как и в cookies здесь можно хранить только строковые данные. Чтобы обойти это ограничение sessvars.js использует преобразователь JSON в строку для сериализации объектных данных.

Скрипт работает во всех основных браузерах: IE 6/7, Firefox 1.5/2/3b5, Safari, Opera 9.

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

SoundManager - JavaScript API для воспроизведения звука

29 апреля 2008

Пока что JavaScript не способен самостоятельно воспроизводить звуковые файлы, например mp3. Однако если призвать на помощь технологию Flash, то может получиться очень неплохая связка для работы с аудио. Именно такую библиотеку я совсем недавно обнаружил в сети. Итак, SoundManager - библиотека, при помощи которой можно добавлять звуковые ролики и управлять ими при помощи JavaScript. Само же воспроизведение звука будет осуществляться маленьким (всего 2,2 К) Flash файлом, который автоматически подгружается библиотекой. Само собой разумеется, что браузер должен поддерживать Flash (не менее 8-й версии).

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

Скрипт виртуальной клавиатуры

15 апреля 2008

Виртуальные клавиатуры чаще всего используются на веб сайтах, требующих максимального уровня безопасности, защищая нас от всяких клавиатурных шпионов. Также такая клавиатура полезна, если у вас нет нужной раскладки; например, клавиатура только на английском, а нужно ввести русский текст.

Этот скрипт виртуальной клавиатуры поможет вам создать динамически появляющуюся клавиатуру возле текстовых полей. Скрипт поддерживает множество языков, в том числе и русский, и протестирован в большинстве браузеров - Internet Explorer, Firefox, Opera, Safari и др.

Виртуальная клавиатура

Для подключения скрипта нужно добавить следующие две строки в <head>:

<script type="text/javascript" src="keyboard.js" charset="UTF-8"></script>
<link rel="stylesheet" type="text/css" href="keyboard.css" />

В текстовые поля, для которых нужно добавить виртуальную клавиатуру, нужно добавить класс “keyboardInput”:

<input type="text" value="" class="keyboardInput" />

Это все, в результате, возле текстовых полей появится маленькая иконка, по нажатию на которую будет появляться клавиатура.

Посмотреть примеры можно на сайте автора.

JSLab Standard Library - коллекция функций

31 марта 2008

JSLab - это отличная коллекция JavaScript функций, расширяющих возможности стандартных объектов - Array, Date, String и др.

JSLab Standard Library

Например, для объекта Array имеются функции copy (копирование массива), diff (получение разницы массивов), unique (удаление повторяющихся значений) и др.

Есть также возможность составить из всех имеющихся здесь функций собственную библиотеку. Нужно просто нажать на ссылку Create library и выбрать функции, которые хотите добавить.


WP-Prettify - подсветка синтаксиса в wordpress

10 марта 2008

WP-Prettify - это плагин для wordpress, созданный мной на основе google-code-prettify. Он предназначен для подсветки синтаксиса на web-страницах. Подсветка выполняется на стороне клиента, то есть в браузере пользователя при помощи скрипта JavaScript. В данный момент доступны следующие языки программирования: C/С++, C#, Java, Python, Bash, SQL, CSS, Javascript, Makefiles, Ruby, PHP, Awk, Perl. HTML и XML также доступны, однако при использовании этих языков, нужно заменять открывающие тэги < на &lt;, в противном случае вместо тэгов вы можете увидеть соответствующие HTML элементы.

Главной целью, которая побудила меня создать такой плагин, это необходимость показывать одновременно форматированный и исходный текст, дабы дать возможность пользователю легко скопировать любой кусок кода на странице. Изменения, внесенные мной в google-code-prettify касались только добавления нумерации строк и создания табов для переключения между форматированным и исходным кодом.

Устанавливается плагин точно так же, как и любой другой плагин для wordpress: нужно просто распаковать дистрибутив в директорию с плагинами (/wp-content/plugins), затем активировать его из админ панели. Затем любой кусок кода, который необходимо отформатировать, нужно заключить в тэги pre, указав для них класс prettyprint:

<pre class="prettyprint">
   // далее код который нужно подсвечивать
   function hello(){
      alert('hello world');
   }
</pre>

В результате вы получите следующий отформатированный текст:

	// далее код который нужно подсвечивать
	function hello(){
		alert('hello world');
	}

Скачать скрипт можно здесь: wp-prettify-0.1.zip (19,8K). Страница проекта находится здесь.

Управление иконками favicon из JavaScript

2 февраля 2008

Иногда появляется необходимость динамически изменять иконку сайта - favicon, например, в чатах, при получении нового сообщения, при завершении продолжительной операции и др.

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