diff --git a/index.html b/index.html index a7663b3c..79203383 100644 --- a/index.html +++ b/index.html @@ -13,6 +13,9 @@ +
+ +
diff --git a/languages/zh-TW.css b/languages/zh-TW.css index 6d11619a..c02c5ee7 100644 --- a/languages/zh-TW.css +++ b/languages/zh-TW.css @@ -119,3 +119,6 @@ .type-name-15::after{ content: "販賣用"; } +.control-box .languages-label::before{ + content: "語言:"; +} \ No newline at end of file diff --git a/languages/zh.css b/languages/zh.css index ce1436c9..d2574686 100644 --- a/languages/zh.css +++ b/languages/zh.css @@ -118,4 +118,7 @@ } .type-name-15::after{ content: "販賣用"; +} +.control-box .languages-label::before{ + content: "语言:"; } \ No newline at end of file diff --git a/script.js b/script.js index bf351569..686192fe 100644 --- a/script.js +++ b/script.js @@ -34,6 +34,14 @@ var formation = { }; window.onload = function() { + //添加语言列表 + var controlBox = document.body.querySelector(".control-box"); + var langList = controlBox.querySelector(".languages"); + languageList.forEach(function(l){ + var langOpt = new Option(l.name,l.i18n); + langList.options.add(langOpt); + }) + var language_i18n = getQueryString("lang"); //获取参数指定的语言 var browser_i18n = (navigator.language||navigator.userLanguage); //获取浏览器语言 var hasLanguage = languageList.filter(function(l){ @@ -44,6 +52,13 @@ window.onload = function() }); language = hasLanguage.length?hasLanguage[hasLanguage.length-1]:languageList[0]; document.head.querySelector("#language-css").href = "languages/"+language.i18n+".css"; + Array.prototype.slice.call(langList.options).some(function(lOpt){ + if (lOpt.value == language.i18n) + { + lOpt.selected = true; + return true; + } + }); GM_xmlhttpRequest({ method: "GET", @@ -87,10 +102,10 @@ window.onpopstate = function() } } //创建新的分享地址 -function creatNewUrl(){ +function creatNewUrl(lang){ if (!!(window.history && history.pushState)) { // 支持History API - var language_i18n = getQueryString("lang"); //获取参数指定的语言 + var language_i18n = lang || getQueryString("lang"); //获取参数指定的语言 history.pushState(null, null, '?' + (language_i18n?'lang=' + language_i18n + '&':'') + 'data=' + encodeURIComponent(JSON.stringify(formation))); } } @@ -292,6 +307,13 @@ function initialize() editBox.hide(); } + var controlBox = document.body.querySelector(".control-box"); + var langList = controlBox.querySelector(".languages"); + langList.onchange = function(){ + creatNewUrl(this.value); + history.go(); + } + /*添对应语言执行的JS*/ var languageJS = document.head.appendChild(document.createElement("script")); languageJS.id = "language-js"; diff --git a/style.css b/style.css index e0f72b7e..09bdacd4 100644 --- a/style.css +++ b/style.css @@ -553,4 +553,7 @@ ul{ } .edit-box .button-box .button-done.cant-assist::after{ content: "不能辅助"; -}*/ \ No newline at end of file +}*/ +.control-box .languages-label::before{ + content: "Lanuage:"; +} \ No newline at end of file