Это должно помочь вам начать. Однако здесь есть некоторые проблемы, которые вам необходимо решить. Например, это не обязательно будет переводить все текст на странице, только элементы <p>
внутри <div id="article">
. Вы можете заменить селектор своим собственным расширенным селектором, который охватывает все, что вам нужно для покрытия.
Пара вещей, которые я изменил по сравнению с вашим исходным кодом:
- Вам не нужно событие
onclick
в ссылке - мы можем легко сделать то, что нам нужно, внутри функции toggle
в jQuery.
- Раздел
<div id="translation">
не нужен (я полагаю, вы просто скопировали и вставили из API).
- Убедитесь, что вы получаете доступ к ссылке по ее идентификатору, если только вам не нужно несколько ссылок, которые переводят всю страницу (что, похоже, не так).
<html>
<head>
<title>Google Translate Example</title>
<script type="text/javascript" src="includes/js/jquery.js"></script>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("language", "1");
$(document).ready(function(){
$('#link1').toggle(function(){
$('#article p').each(function(){
var element = $(this);
google.language.translate($(this).text(), 'en', 'es', function(result){
$(element).text(result.translation);
});
});
$(this).html('English');
}, function(){
$('#article p').each(function(){
var element = $(this);
google.language.translate($(this).text(), 'es', 'en', function(result){
$(element).text(result.translation);
});
});
$(this).html('En Espanol');
});
});
</script>
</head>
<body>
<p><a id="link1" href="#container1">En Espanol</a></p>
<div id="article">
<p>Google Inc is set to introduce on Tuesday a new Web browser designed to handle text
and graphics.</p>
</div>
</body>
</html>
Для получения дополнительной информации см. Google AJAX Language API .