Сделать этот гугл переводчик букмарклетом в фрейме? - PullRequest
0 голосов
/ 09 февраля 2019

Я нашел этот букмарклет google translate из здесь , и мне было интересно, можно ли запустить этот код в iframe, на той же странице, а не в новом окне.

javascript: var t = ((window.getSelection && window.getSelection()) || (document.getSelection && document.getSelection()) || (document.selection && document.selection.createRange && document.selection.createRange().text));
var e = (document.charset || document.characterSet);
if (t != '') {
    var url1 = 'http://translate.google.com/?text=' + t + '&hl=en&langpair=auto|sk&tbb=1&ie=' + e;
    window.open(url1, '_blank', "GoogleTranslate", "height=200,width=200")
} else {
    var url2 = 'http://translate.google.com/translate?u=' + encodeURIComponent(location.href) + '&hl=en&langpair=auto|sk&tbb=1&ie=' + e;
    window.open(url2, '_blank', "GoogleTranslate", "height=200,width=200")
};
void(0);

1 Ответ

0 голосов
/ 09 февраля 2019

НЕТ, это невозможно.Google сделал это невозможным, потому что они не включили заголовок X-Frame-Options в URL-адреса, включенные в предоставленный вами скрипт, что крайне важно для отображения запрошенного содержимого URL-адреса в iframe.

Вы можете проверить пример здесь: https://jsfiddle.net/5w2tv8fs/ Вы можете заметить в консоли сообщение, что запрос отклонен, потому что заголовок отсутствует.

...