696
 

Мультиязычность в JavaScript

Приветствую вас дорогие читатели! Сегодня я представляю вашему вниманию скрипт, способный обеспечить мультиязычность приложениям, написанным на JavaScript. Сам скрипт создан с использованием jQuery, однако при желании, его можно легко переделать на чистые JavaScript функции или под другую библиотеку – Mootols, Prototype и т.п.

Суть работы скрипта заключается в том, что стандартный объект String расширяется двумя функциями для переключения языков. Функция String.localize() возвращает перевод текущей строки, а String.localize_with_args() возвращает перевод строки с заменой указанных в параметрах фраз. Обе эти переменные имеют псевдонимы String.l() и String.l_with_args() соответственно.

Собственно языковые переменные хранятся в виде пары “ключ” – “значение” в объектах отдельно для каждого языка.

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

jQuery.popeye – альтернатива Lightbox

В огромном ряду плагинов Lightbox пополнение – новый скрипт jQuery.popeye, написанный под библиотеку jQuery. Этот скрипт привлек мое внимание оригинальным исполнением и стильным дизайном. В отличие от стандартных галерей Lightbox, этот скрипт показывает изображения на том месте, где расположена уменьшенная иконка. К тому же все миниатюры изображений показываются в одном блоке с элементами управления, позволяющими их пролистывать. Если нажать на миниатюру, то скрипт плавно увеличит её показав изображение в полный размер. Под элементами управления расположен блок с описанием изображений.

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

Постраничная навигация на jQuery

В последнее время мне пришлось столкнуться с проблемой постраничной навигации (pagination), и, дабы не изобретать велосипед, я сразу же решил поискать готовые решения. Как оказалось, их не так уж и много. В конце концов, я остановил свой выбор на приемлемом для меня решении, о котором и пойдет речь в этой статье. Сие решение представляет собой скрипт, использующий jQuery и способный обеспечивать быструю и простую навигацию используя AJAX. Я несколько изменил исходный скрипт, чтобы получить таблицу с одинаковым количеством строк (в исходном варианте таблица всегда имела размер в зависимости от количества получаемых данных), плюс я добавил эффекты затухания при прорисовке.

Пагинатор на jQuery

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

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

One-Click Upload – плагин для аплоада файлов на jQuery

One-Click Upload – это плагин для jQuery, который способен заменить стандартный элемент формы для аплоада файлов, причем для этой цели можно использовать ссылки, изображения или любой другой элемент. После инициализации выбранного элемента, по нажатию на него будет отображаться диалог выбора файлов, а сама загрузка файла на сервер будет происходить без перезагрузки страницы. Используя этот плагин вы сможете настроить внешний вид элементов для загрузки файлов так, как вам нужно, в отличие от стандартного поля для загрузки файлов, вид которых крайне трудно изменить (см. пример здесь).

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

jQuery Timers – плагин для работы с таймерами в jQuery

jQuery Timers – это плагин который упрощает работу с JavaScript таймерами, добавляя три новые функции everyTime(), oneTime() и stopTime(). Чем же эти три функции удобнее, чем привычные нам стандартные setTimeout() и setInterval()? Во первых, в jQuery используются цепочки вызовов функций:

$('.controlled-interval', demos).find('.start').css("cursor", "pointer").click(function(){});

Используя jQuery Timers, вы сможете добавлять таймеры используя такую же модель вызова функций. Например:

$('myElement').find('ul').everyTime(1000, 'controlled', function() {
	alert("Таймер");
});

Во вторых, при использовании setTimout() и setInterval(), используется глобальная область видимости, то есть, указатель this ссылается на объект window. В случае с использованием одной из функций плагина jQuery Timers, указатель this ссылается на элемент, которому был присвоен таймер.

$("#myElement").oneTime(2000, function() {
	$(this).html("See?");
});

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

Страница 3 из 6«123456»

JSToolbox создан на основе WordPress