다국어 대응

by hohoya33

HTML

https://jsfiddle.net/solodev/0stLrpqg/

https://codepen.io/lmiranda10/pen/oMGwLL?editors=0010

https://stackfame.com/auto-refresh-page-first-load-javascript-jquery


<script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
<script type="text/javascript">
function googleTranslateElementInit() {
	new google.translate.TranslateElement({
		pageLanguage: 'ko',
		includedLanguages: 'en,ko,zh-CN,ja',
		autoDisplay: false
	}, 'google_translate_element');
}
</script>
<script type="text/javascript" src="./ssg.view.translated.js"></script>
<script>
$(function(){

var origValue = document.getElementById("translationDetector").innerHTML;

document.getElementById("translationDetector").addEventListener("DOMSubtreeModified", translationCallback, false);

function translationCallback() {
	// This function needs to be called when Google translates this web page.

	var currentValue = document.getElementById("translationDetector").innerHTML;

	if (currentValue && currentValue.indexOf(origValue) < 0) {
		origValue = currentValue;
		console.log("There is a disturbance in the force: " + currentValue);
	}
}

var refresh = $window.localStorage.getItem('refresh');
console.log(refresh);
if (refresh===null){
    window.location.reload();
    $window.localStorage.setItem('refresh', "1");
}

                function reloadPage() {
                    var currentDocumentTimestamp = new Date().getTime();
                    // Current Time //
                    var now = Date.now();
                    // Total Process Lenght as Minutes //
                    var tenSec = 10 * 1000;
                    // End Time of Process //
                    var plusTenSec = currentDocumentTimestamp + tenSec;
                    if (now > plusTenSec) {
                        location.reload();
                    }
                }

    var oSsgViewTranslate = new ssg.View.translate();
    //언어 변경 시
   ...

JavaScript

//mutationobserver-shim v0.3.2 (github.com/megawac/MutationObserver.js)
//Authors: Graeme Yeates (github.com/megawac)
window.MutationObserver=window.MutationObserver||function(w){function v(a){this.i=[];this.m=a}function I(a){(function c(){var d=a.takeRecords();d.length&&a.m(d,a);a.h=setTimeout(c,v._period)})()}function p(a){var b={type:null,target:null,addedNodes:[],removedNodes:[],previousSibling:null,nextSibling:null,attributeName:null,attributeNamespace:null,oldValue:null},c;for(c in a)b[c]!==w&&a[c]!==w&&(b[c]=a[c]);return b}function J(a,b){var c=C(a,b);return function(d){var f=d.length,n;b.a&&3===a.nodeType&&
a.nodeValue!==c.a&&d.push(new p({type:"characterData",target:a,oldValue:c.a}));b.b&&c.b&&A(d,a,c.b,b.f);if(b.c||b.g)n=K(d,a,c,b);if(n||d.length!==f)c=C(a,b)}}function L(a,b){return b.value}function M(a,b){return"style"!==b.name?b.value:a.style.cssText}function A(a,b,c,d){for(var f={},n=b.attributes,k,g,x=n.length;x--;)k=n[x],g=k.name,d&&d[g]===w||(D(b,k)!==c[g]&&a.push(p({type:"attributes",target:b,attributeName:g,oldValue:c[g],attributeNamespace:k.namespaceURI})),f[g]=!0);for(g in c)f[g]||a.push(p({target:b,
type:"attributes",attributeName:g,oldValue:c[g]}))}function K(a,b,c,d){function f(b,c,f,k,y){var g=b.length-1;y=-~((g-y)/2);for(var h,l,e;e=b.pop();)h=f[e.j],l=k[e.l],d.c&&y&&Math.abs(e.j-e.l)>=g&&(a.push(p({type:"childList",target:c,addedNodes:[h],removedNodes:[h],nextSibling:h.nextSibling,previousSibling:h.previousSibling})),y--),d.b&&l.b&&A(a,h,l.b,d.f),d.a&&3===h.nodeType&&h.nodeValue!==l.a&&a.push(p({type:"characterData",target:h,oldValue:l.a})),d.g&&n(h,l)}function n(b,c){for(var...