これが私のクエリコードです
function translateTo(lang) {
if (TRAINER_MULTILANG > 0) {
$.getScript("js/lang/trainer.lang."+lang+".js")
.done(function(script,textStatus) {
pushLang(I18N);
TRAINER_CURRENT_LANG = lang;
})
.fail(function( jqxhr, settings, exception ) {
console.log("[i18n] Failed to load langfile. Loading default () instead...");
$.getScript("js/lang/trainer.lang."+TRAINER_DEFAULT_LANG+".js")
.done(function(script,textStatus) {
pushLang(I18N);
TRAINER_CURRENT_LANG = TRAINER_DEFAULT_LANG;
});
});
} else {
$.getScript("js/lang/trainer.lang."+TRAINER_DEFAULT_LANG+".js")
.done(function(script,textStatus) {
pushLang(I18N);
});
}
}
function pushLang(data) {
$('[data-i18n="true"]').each(function (e) {
$(this).html(data[$(this).html()]);
});
}
私のhtmlは次のようになります:
<span data-i18n="true">LANT_LANG_CONSTANT1</span>
<span data-i18n="true">LANT_LANG_CONSTANT2</span>
js/lang/trainer.lang... ファイルは次のようになります。
var I18N = {
LANT_LANG_CONSTANT1: 'etc'
}
問題は、関数 translateTo が、この関数で js ファイルを含めた直後の . また、コンテンツを再更新した場合にのみテキストが変更されます。何かを作ることは可能ですか?