перевести RSS-канал, который был захвачен cURL - PullRequest
0 голосов
/ 27 июня 2010

мои самые надежные программисты и спасибо за помощь!

Я получаю rss-feed с помощью jquery-ajax, используя php curl. Он очень красиво загружается прямо на странице. Однако я хотел бы перевести текст, который теперь является html, заголовок в h2 и текст в p, обернутый контейнером div.

API-скрипт Google для перевода, похоже, не запускается после того, как контент был помещен в div. На самом деле ничего не происходит. Я попытался поместить сценарий в файл ajax-url и файл, в котором отображается содержимое.

Я использовал .live(), но без результата.

Есть идеи?

Спасибо!

-

В одном из методов я создаю таблицу в MySQL и помещаю ее в заголовок, ссылку и текст. После этого я повторяю таблицу.

$query3 = mysql_query("SELECT * FROM temp_rss_$id") or die("$error_msg");
while ($row3 = mysql_fetch_array($query3)) {
    $title = htmlentities($row3['title']);
    $text = htmlentities($row3['text']);
    $link = $row3['link'];
echo "

        $titel

        $text
";
}

Заголовок находится внутри h2 и якоря, а текст внутри стр.

Используя простой jquery, этот метод без ajax, чтобы получить это:

$('a.rss-links').live('click', function() {
    $('#media').load(php_file);
});

Работает как шарм. Тогда есть google-api-скрипт:

function initialize() {
    var text = document.getElementById('media').innerHTML;
    google.language.detect(text, function(result) {
        if (!result.error && result.language) {
            google.language.translate(text, result.language, "en", function(result) {
                var translated = document.getElementById("media");
                if (result.translation) {
                    translated.innerHTML = result.translation;
                }
            });
        }
    });
}
google.setOnLoadCallback(initialize);

Не загружается Google-скрипт. Что можно сделать? Конечно, это работает, если я помещаю текст прямо на страницу, не загружая другой файл. Использование ajax и append (result) вместо .load не имеет значения. Есть идеи?

Спасибо!

1 Ответ

0 голосов
/ 27 июня 2010

Вы можете вызвать эту функцию после запуска .load(), так как это обратный вызов, например:

$('a.rss-links').live('click', function() {
    $('#media').load(php_file, initialize);
});

Это вызовет функцию initialize, когда .load() будет завершен, и новое содержимое в элементе #media будет готово для перевода.

...