да... все оказалось не так просто...
Итак, начну.
Впринципе, достаточно просто сделать перевод при помощи translate.ru. Там по крайней мере виден исходный код.
Немного переработанная форма переводчика с Translate.ru
HTML код:
<form name='form_var7b' method='POST' action='http://www.translate.ru/url/wideTranslation.aspx' target='_top'>
<script>
var str_url=location.href;
if (top != self){
str_url = str_url.replace("http://",'');
var i = str_url.search('/');
if (i>0)
str_url = str_url.substring(0,i);
str_url = "http://"+str_url;}
document.write('<input type="hidden" name=url value="'+str_url+'">');document.write('<input type="hidden" name="template"
value="General">');document.write('<input type="hidden" name="autotranslate" value="true">');document.write('<input
type="hidden" name="transliterate" value="on">');document.write('<input type="hidden" name="status"
value="translate">');document.write('<input type="hidden" name="prmtlang" value="ru">');
function movepic_new (img_obj, img_src)
{
img_obj.src = img_src.src;
return true;
}
</script>
<table border=1>
<tr><td><select name=direction>
<option value="re">English</option>
<option value="rg">German</option>
<option value="rf">French</option>
<option value="rs">Spanish</option></select></td>
<td><input type=submit Value=Перевод></td></tr>
</table>
</form>
Я просто убрал из таблицы лишнее. Исходные коды
здесь. Но также в этом методе есть и недостки: полоса promt'а вверху переведенной страницы и малое количество языков для перевода.
У гугла исходник выглядит код с приведенного выше сайта так:
читать дальше »
HTML код:
<script type="text/javascript">
function doTranslate(select_obj) {
if (location.hostname == 'adress' && select_obj.value == 'en|en')
return;
else if(location.hostname != 'adress' && select_obj.value == 'en|en')
location.href = gfg('u');
else if(location.hostname == 'adress' && select_obj.value != 'en|en')
location.href = 'http://translate.google.com/translate_p?client=tmpg&hl=en&langpair=' + select_obj.value + '&u=' + location.href;
else
location.href = 'http://translate.google.com/translate_p?client=tmpg&hl=en&langpair=' + select_obj.value + '&u=' + gfg('u');
}
// get from get
function gfg(name) {
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^]*)";
var regex = new RegExp(regexS);
var results = regex.exec(location.href);
if(results == null)
return '';
else
return results[1];
}
//]]>
</script>
<select onchange="doTranslate(this);" style="width:150;">
<option value="">Select Language</option>
<option value="en|en">English</option>
<option value="en|ar">Arabic</option>
<option value="en|bg">Bulgarian</option>
<option value="en|zh-CN">Chinese (Simplified)</option>
<option value="en|zh-TW">Chinese (Traditional)</option>
<option value="en|hr">Croatian</option>
<option value="en|cs">Czech</option>
<option value="en|da">Danish</option>
<option value="en|nl">Dutch</option>
<option value="en|fi">Finnish</option>
<option value="en|fr">French</option>
<option value="en|de">German</option>
<option value="en|el">Greek</option>
<option value="en|hi">Hindi</option>
<option value="en|it">Italian</option>
<option value="en|ja">Japanese</option>
<option value="en|ko">Korean</option>
<option value="en|no">Norwegian</option>
<option value="en|pl">Polish</option>
<option value="en|pt">Portuguese</option>
<option value="en|ro">Romanian</option>
<option value="en|ru">Russian</option>
<option value="en|es">Spanish</option>
<option value="en|sv">Swedish</option>
</select>
Этот исходник подходит для перевода с английского языка на другие.
Для перевода с русского на другие стоит использовать этот вариант:
читать дальше »
HTML код:
<script type="text/javascript">
function doTranslate(select_obj) {
if (location.hostname == 'adress' && select_obj.value == 'ru|ru')
return;
else if(location.hostname != 'adress' && select_obj.value == 'ru|ru')
location.href = gfg('u');
else if(location.hostname == 'adress' && select_obj.value != 'ru|ru')
location.href = 'http://translate.google.com/translate_p?client=tmpg&hl=ru&langpair=' + select_obj.value + '&u=' + location.href;
else
location.href = 'http://translate.google.com/translate_p?client=tmpg&hl=ru&langpair=' + select_obj.value + '&u=' + gfg('u');
}
// get from get
function gfg(name) {
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^]*)";
var regex = new RegExp(regexS);
var results = regex.exec(location.href);
if(results == null)
return '';
else
return results[1];
}
//]]>
</script>
<select onchange="doTranslate(this);" style="width:150;">
<option value="">Select Language</option>
<option value="ru|ru">Russian</option>
<option value="ru|en">English</option>
<option value="ru|ar">Arabic</option>
<option value="ru|bg">Bulgarian</option>
<option value="ru|zh-CN">Chinese (Simplified)</option>
<option value="ru|zh-TW">Chinese (Traditional)</option>
<option value="ru|hr">Croatian</option>
<option value="ru|cs">Czech</option>
<option value="ru|da">Danish</option>
<option value="ru|nl">Dutch</option>
<option value="ru|fi">Finnish</option>
<option value="ru|fr">French</option>
<option value="ru|de">German</option>
<option value="ru|el">Greek</option>
<option value="ru|hi">Hindi</option>
<option value="ru|it">Italian</option>
<option value="ru|ja">Japanese</option>
<option value="ru|ko">Korean</option>
<option value="ru|no">Norwegian</option>
<option value="ru|pl">Polish</option>
<option value="ru|pt">Portuguese</option>
<option value="ru|ro">Romanian</option>
<option value="ru|es">Spanish</option>
<option value="ru|sv">Swedish</option>
</select>
При желании можно править html код, удалять ненужные языки.
При вставке в тело страницы нужно менять
adress на адрес сайта, на котором будет располагаться страница (например вместо
adress вводим
forum.oszone.net, если страница с кодом будет находится на сайте
forum.oszone.net.