vas*_*zis 5 javascript jquery json localization sweetalert
我想在另一个js文件中使用jquery.localize.js(i18n json文件).让我们说sweetalerts2.
localize根据您选择的语言(EN,FR,GR)提供json文件中的翻译.(https://github.com/coderifous/jquery-localize)
Sweet Alert2是性感的弹出警报,不能被浏览器阻止,如常见警报,并为您提供全套选择,以使其看起来用户友好.(https://limonte.github.io/sweetalert2/)
但问题是如何根据用户选择的语言翻译Sweet Alert弹出窗口.
Localize 为我们提供了回调,但您还必须找到用户选择的语言才能使用您必须使用的语言的 json 文件。为此,请转到 jquery.localize.js 文件并在文件顶部将变量设为 global
var globallanguage;
Run Code Online (Sandbox Code Playgroud)
之后,转到包含以下代码的第 185 行,并在“globallanguage”处输入“lang”变量的输入。
lang = normaliseLang(options.language ? options.language : $.defaultLanguage);
globallanguage=lang;
Run Code Online (Sandbox Code Playgroud)
现在您可以将用户的选择保存在“globallanguage”中。您可以转到任何您想要的文件并使用下面的代码来检索翻译。
var message;
var messagetitle;
$("[data-localize]").localize("i18n/site",
{ language: globallanguage, //taking from localize.jquery
callback: function(data, defaultCallback)
{message = data.alert.incidentalert.LEAVE;
defaultCallback(data);
}});
$("[data-localize]").localize("i18n/site",
{ language: globallanguage, //taking from localize.jquery
callback: function(data, defaultCallback)
{messagetitle = data.alert.incidentalert.LEAVEHEADER;
defaultCallback(data);
}});
Run Code Online (Sandbox Code Playgroud)
现在,您从用户选择的 JSON 文件中检索了所需的消息。
之后,您可以简单地调用 SweetAlert2 SWAL 并显示消息。
swal({
title : messagetitle,
text : message,
type : "warning",
showCancelButton : true,
confirmButtonColor : "#e54747",
confirmButtonText : button,
closeOnConfirm : false
}).then(function () { //function when Leave is pressed
Run Code Online (Sandbox Code Playgroud)
这并不是什么超级令人兴奋的事情,但是知道您可以使用 SweetAlerts 或任何其他 JS 库,以任何您想要的语言,这是非常有帮助的......