syncTranslit
Во многих веб проектах используются friendly urls. Например, вместо id статьи в url испольуется его текстовый идентификатор (slug). Обычно slug генерируется автоматически на серверной стороне при создании статьи. Но если вы хотите иметь возможность задавать slug самостоятельно (через форму) – можете использовать мой плагин syncTranslit.
Данный плагин рассчитан на украинскую и русскую аудиторию разработчиков.
Основная задача плагина: генерация slug из кирилличного текста. Плагин позволяет синхронизировать два поля на форме, при этом одно поле является источником данных (например, название статьи), а второе (slug) – принимает траслитерированный текст.
Использование
Подключаем файл плагина, вызываем метод syncTranslit для элемента-источника, передаем параметр destination – id элемента-приемника:
1 2 3 |
$(document).ready(<span style='color:#7f0055; font-weight:bold; '>function</span>(){ $(<span style='color:#2a00ff; '>'#articleTitle'</span>).syncTranslit({destination: <span style='color:#2a00ff; '>'slug'</span>}); }); |
Возможные опции
Список доступных опций:
- destination – id элемента-приемника
- type – url (default) или raw: определяет тип транслитерации. url – для транслитерации в slug (заменяются спец. символы). raw используется для чистого преобразования (с сохранением всех спец. символов)
- caseStyle – lower (default), normal, upper: отвечает за регистр транслитерируемых данных
- urlSeparator – разделитель слов для slug (default: ‘-‘)
Пример с использованием других опций: транслитерация с преобразованием в верхний регистр и с использованием нижнего подчеркивания для разделения слов:
1 2 3 4 5 6 7 |
$(document).ready(<span style='color:#7f0055; font-weight:bold; '>function</span>(){ $(<span style='color:#2a00ff; '>'#articleTitle2'</span>).syncTranslit({ destination: <span style='color:#2a00ff; '>'slug2'</span>, caseStyle: <span style='color:#2a00ff; '>'upper'</span>, urlSeparator: <span style='color:#2a00ff; '>'_'</span> }); }); |
Скачать плагин syncTranslit c Google Code
Страница проекта на сайте jQuery
Жду ваших предложений и замечаний в комментах
Pingback: syncTranslit > Snowcore’s блог | My Web Development Bookmarks()
Pingback: Живая транслитерация в админке()
Pingback: CakePHP, jQuery, CSS - заметки, записи и прочее()