我发现了一个非常简单的方法实现的翻译我的谷歌Chrome扩展的(或定位),但似乎只适用于.json
,css
和js
文件。
但是,如何html
在弹出窗口或选项窗口中定位我的内容呢?
您将要做的是这个。
首先,在您的HTML中使用与Chrome在其他任何地方所需要的语法相同的语法。因此,您的基本知识popup.html
将是:
<!DOCTYPE html>
<html>
<head>
<title>__MSG_app_title__</title>
</head>
<body>
<a href="http://example.com/" title="__MSG_prompt001__">__MSG_link001__</a>
<!-- Need to call our JS to do the localization -->
<script src="popup.js"></script>
</body>
</html>
然后在中提供通常的翻译_locales\en\messages.json
:
{
"app_title": {
"message": "MyApp",
"description": "Name of the extension"
},
"link001": {
"message": "My link",
"description": "Link name for the page"
},
"prompt001": {
"message": "Click this link",
"description": "User prompt for the link"
}
}
最后,您popup.js
将执行实际的本地化:
function localizeHtmlPage()
{
//Localize by replacing __MSG_***__ meta tags
var objects = document.getElementsByTagName('html');
for (var j = 0; j < objects.length; j++)
{
var obj = objects[j];
var valStrH = obj.innerHTML.toString();
var valNewH = valStrH.replace(/__MSG_(\w+)__/g, function(match, v1)
{
return v1 ? chrome.i18n.getMessage(v1) : "";
});
if(valNewH != valStrH)
{
obj.innerHTML = valNewH;
}
}
}
localizeHtmlPage();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句