Показать сообщение отдельно
  #1 (permalink)  
Старый 07.12.2009, 00:53
Интересующийся
Отправить личное сообщение для ageent.ua Посмотреть профиль Найти все сообщения от ageent.ua
 
Регистрация: 09.01.2009
Сообщений: 18

Мгновенный транслит на Javascript Instant_translit
Не так давно довелось делать один иностранный сайт, на нем встала задача создания мгновенного транслита с английского языка на русский. Встала такая задача потому как у большинства наших людей за границей просто нет русской раскладки клавиатуры, и остается либо писать транслитом (который я с трудом читаю, ибо у каждого в голове свои правила транслита) либо идти на сервис translit.ru и писать там русский текст, потом копировать, потом вставлять и наконец отправлять собеседнику. Плагин Instant_translit, по сути, является маленьким аналогом сервиса translit.ruв плане транслита разумеется )

Плагин написан в двух вариантах:
1. Первый вариант это чистый JavaScrip, который можно легко запихнуть куда угодно.
2. Второй вариант рассчитан на любителей Jquery и представляет собой обычный плагин.

Данный плагин можно использовать в textarea и input. Также в плагин по умолчанию встроил два стандарта для перевода это Стандарт ISO 9-95 и ГОСТ 16876-71. При необходимости можете изменить правила, так как вам нужно. Для этого просто в нужном массиве перепишите свои правила. Тестировал плагин в следующих браузерах: IE6, IE7, IE8, Opera, FireFox, Ghrome и Safary.

Параметр на данный момент в плагине ровно один. Это выбор стандарта для перевода: Стандарт ISO 9-95 или ГОСТ 16876-71.

Пример вставки плагина Instant_translit с использованием Jquery
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script src="instant_translit.js"></script>
  <script>
  $(document).ready(function(){
        $(".ageent_trans").keypress(function(e) {
           /*
               e - событие
               obect_now - объект
               rules - правила для перевода. 
                 1 стандарт ISO 9-95;
                 2 - ГОСТ 16876-71;
           */ 
           $(this).Instant_translit({event_now: e, rules: 1, obect_now : this}); 
        });
  });
  </script>
</head>
<body>
<form>
    <textarea cols="150" class="ageent_trans" rows="20"></textarea>
</form>
</body>
</html>

Пример вставки скрипта Instant_translit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<head>
 <script src="instant_translit_script.js"></script>
</head>
<body>
<form target="chattag" name="chat">
    <!--
       event - событие
       this - объект
       rules - правила для перевода. 
         1 стандарт ISO 9-95;
         2 - ГОСТ 16876-71;
    -->
    <textarea name="message" onkeypress="translate_letter(event, this, rules=1);" cols="150" rows="20"></textarea>
</form>
</body>
</html>

Демо работы плагина, последняя версия плагина и подробное описание здесь

Последний раз редактировалось ageent.ua, 28.12.2009 в 16:43.
Ответить с цитированием