구글 자동번역에서 현재언어를 표시하는 방법 문의드려요. 채택완료
위 게시물을 보고 들레아빠님께서 공개한 소스를 이용해서 페이지를 자동번역하고 있어요.
만약 일본어로 페이지를 바꾸었을때 현재 페이지에 적용된 언어가 어떤 언어인지를
변수를 가져올 방법이 있을까요?
<?
$language = "추출된 현재언어";
?>
셀렉트폼으로 언어 바꾸는데, 페이지를 새로고침 하였을때
셀렉트폼에서 현재언어 표시가 되지 않아서 문의를 드려요.
도움 부탁 드려요~ㅜ
답변 2개
기존 선택된 언어코드에 대해 쿠키 또는 스토리지 같은 저장매체의 이용을 생각해볼수 있고
다음은 sessionStorage 를 사용해 동작하도록 하는 방법중 하나입니다.
function googleTranslateElementInit2() {
var locale_default = 'ko';
var locales = window.sessionStorage.getItem('locales');
if (locales == null) {
locales = {from: locale_default, to: locale_default};
window.sessionStorage.setItem('locales', JSON.stringify(locales));
} else {
locales = JSON.parse(locales);
}
var goog_te_TE = new google.translate.TranslateElement({
// pageLanguage: locales.from,
autoDisplay: false
}, 'google_translate_element2');
// var goog_te_combo = document.querySelector('.goog-te-combo');
// if (goog_te_combo != null) {
// goog_te_combo.addEventListener('change', function () {
// locales.to = this.value;
// if (locales.to == '') {
// locales.to = locale_default;
// }
// window.sessionStorage.setItem('locales', JSON.stringify(locales));
// });
// }
setInterval(function () {
// var goog_te_TE = google.translate.TranslateElement.getInstance(); // from: o, to: j
locales.from = goog_te_TE.o;
locales.to = goog_te_TE.j;
window.sessionStorage.setItem('locales', JSON.stringify(locales));
}, 1000);
if (locales.from != locales.to) {
doGTranslate(Object.values(locales).join('|'));
}
}
/* 35 ? String.fromCharCode(c + 29) : c.toString(36))
};
if (!''.replace(/^/, String)) {
while (c--) r[e(c)] = k[c] || e(c);
k = [function (e) {
return r[e]
}];
e = function () {
return '\\w+'
};
c = 1
}
while (c--) if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
return p
}('6 7(a,b){n{4(2.9){3 c=2.9("o");c.p(b,f,f);a.q(c)}g{3 c=2.r();a.s(\'t\'+b,c)}}u(e){}}6 h(a){4(a.8)a=a.8;4(a==\'\')v;3 b=a.w(\'|\')[1];3 c;3 d=2.x(\'y\');z(3 i=0;i
댓글을 작성하려면 로그인이 필요합니다.
span 테그 id를 보시면 :1.finishTargetLang 로 되어있네요.
그아래 테그의 class를 보시면 VIpgJd-ZVi9od-xl07Ob-lTBxed 요렇게 되어있는데요.
jquery 를 사용해서.. 하면될거 같습니다.
var langguage = $(':1.finishTargetLang').find("span").eq(0);
요렇게 한번해보시기 바랍니다. (:1.finishTargetLang 아이디 안에 span테그를 찾아서. 0배열의 내용을 langguage 변수에 할당)
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인