V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
HUZHUANGZHUANG
V2EX  ›  问与答

谷歌插件多语言切换失效,默认英文,通过下拉框切换为中文可以成功,再切换为英文,界面还是中文

  •  
  •   HUZHUANGZHUANG · 2023 年 8 月 16 日 · 477 次点击
    这是一个创建于 966 天前的主题,其中的信息可能已经有所发展或是发生改变。
    function translateUI() {
    const elements = document.querySelectorAll('[data-i18n]');

    elements.forEach(element => {
    const key = element.getAttribute('data-i18n');

    let translation, translation1
    if (key.includes('|')) {
    const newkey = key.split('|')
    translation = chrome.i18n.getMessage(newkey[0]);
    translation1 = chrome.i18n.getMessage(newkey[1]);
    if (element.hasAttribute('data-tooltip')) {
    element.setAttribute('data-tooltip', translation1);
    }
    if (element.hasAttribute('title')) {
    element.setAttribute('title', translation1);
    }
    element.textContent = translation;

    } else {
    translation = chrome.i18n.getMessage(key);
    element.textContent = translation;
    }
    })
    }

    document.addEventListener('DOMContentLoaded', function () {
    // 语言选项事件监听器
    var languageSelector = document.getElementById("languageSelector");
    // 为<select>添加 change 事件监听器
    languageSelector.addEventListener("change", function () {
    // 获取用户选择的语言后要进行存储
    const saveLanguage = languageSelector.value
    console.log("Selected language:", saveLanguage);
    translateUI()
    });
    })

    translateUI 是一个语言切换函数,我只有两种语言,一种英文,一种中文.默认进入是英文界面,当语言下拉框选择为中文的时候可以切换成功,然后从中文切换为英文就没有反应.translateUI 函数中加过输出,中文切换为英文的时候有输出,但是界面就是不变.求诸位暴富的大佬们指点,感谢
    目前尚无回复
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   977 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:33 · PVG 06:33 · LAX 15:33 · JFK 18:33
    ♥ Do have faith in what you're doing.