Функция перевода JQuery не работает в Firefox / Chrome - PullRequest
2 голосов
/ 24 января 2012

У меня есть HTML-страница, которая разделена на две рамки.Отдельные веб-сайты открываются пользователями в этих фреймах, поскольку я предоставил опцию открытого веб-сайта.

Эти веб-сайты могут быть на любом языке.Так.Мне нужно перевести языки этих сайтов на английский.

Я использую функцию перевода JQuery, которая не работает.Поскольку я новичок в JQuery, я могу использовать неправильный синтаксис / путь.

Я пробовал этот код в Firefox, который не работает.Я пробовал в Chrome, но я не могу знать, работает ли он или нет из-за опции перевода языка по умолчанию в Google Chrome.Я также искал вопросы StackOverFlow, но ничего не нашел.

$(function(){ //on document ready
  $('body').translate('en');
})

Вот ссылка на плагин: http://code.google.com/p/jquery-translate/wiki/TranslateMethod

1 Ответ

1 голос
/ 24 января 2012

Прежде всего, библиотека jQuery и скрипт должны вызываться из одного из фреймов, а не из страницы контейнера, иначе это не будет работать.

Функция jQuery jQuery() (или $()) выглядит по умолчанию в текущем документе. Чтобы применить эту функцию к фрейму, вы должны указать контекст как второй аргумент функции. В этом случае это будет выглядеть так:

$(function() {
    $('body', window.parent.frames[0].document).translate('en');
});

Очевидно, что вы можете изменить индекс массива frames (frames[0], frames[1], ecc ..), чтобы он соответствовал кадру, который вы хотите перевести.

edit : вы также можете задать имя для фрейма (поместив атрибут name в тег <frame>, а затем вызвать его, используя window.frame_name.document.

...