Транслетирование специальных символов
Всем привет! Имеется сайт с содержимым на узбекском языке. Они ребята забавные, попросили сделать транслитерацию текста. Принято так, 2 вида языка - на кириллице и латинице. Вот и сайт должен иметь 2 языка. Итак, скрипт парсит селекторы и заменяет найденные символы на нужные. Всё хорошо, но одна проблема, специальные узбекские символы не хотят замещаться, и остаются рядом со своим сопоставлением.. Как быть и что делать? Уже голову сломал..
http://kinoolam.info/films/12-kelinl...1171oloni.html - Вот живой пример. Сайт еще дорабатывается и допереводится =) |
dethlex,
пример бы сделали тут |
dethlex,
:write: <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script src="http://code.jquery.com/jquery-latest.min.js"> </script> </head> <body> <h2>Келинлар қўзғолони</h2> <h1>Келинлар қўзғолони</h1> <p>Kelinlar qo`zg`oloni</p> <script> translate('h1'); function translate(e) { var c = { "\u0410": "A", "\u0411": "B", "\u0412": "V", "\u0413": "G", "\u0414": "D", "\u0415": "E", "\u0401": "JO", "\u0416": "J", "\u0417": "Z", "\u0418": "I", "\u0419": "Y", "\u041a": "K", "\u041b": "L", "\u041c": "M", "\u041d": "N", "\u041e": "O", "\u041f": "P", "\u0420": "R", "\u0421": "S", "\u0422": "T", "\u0423": "U", "\u0424": "F", "\u0425": "H", "\u0426": "C", "\u0427": "CH", "\u0428": "SH", "\u0429": "SCH", "\u042a": "", "\u042b": "y", "\u042c": "`", "\u042d": "YE", "\u042e": "YU", "\u042f": "YA", "\u0430": "a", "\u0431": "b", "\u0432": "v", "\u0433": "g", "\u0434": "d", "\u0435": "e", "\u0451": "jo", "\u0436": "j", "\u0437": "z", "\u0438": "i", "\u0439": "y", "\u043a": "k", "\u043b": "l", "\u043c": "m", "\u043d": "n", "\u043e": "o", "\u043f": "p", "\u0440": "r", "\u0441": "s", "\u0442": "t", "\u0443": "u", "\u0444": "f", "\u0445": "h", "\u0446": "c", "\u0447": "ch", "\u0448": "sh", "\u0449": "sch", "\u044a": "", "\u044b": "y", "\u044c": "`", "\u044d": "ye", "\u044e": "yu", "\u044f": "ya", "\u0456": "i", "\u0457": "i", "\u0493": "g'", "\u0492": "G'", "\u04b3": "h", "\u04b2": "H", "\u049b": "q", "\u049a": "Q", "\u045e": "o'", "\u040e": "O'" }; $(e).each(function () { var d = $(this), a = d.text(), b = new String; for (i = 0; i < a.length; i++) b += c[a[i]] !== void(0) ? c[a[i]] : a[i]; d.text(b) }) }; </script> </body> </html> |
рони,
Благодарю за скрипт, вроде все работает как надо. Тоже пытался решить вопрос через код символов, но ничего не получалось.. |
Часовой пояс GMT +3, время: 15:42. |