感谢阅读。在尝试将i18next添加到我的第一个phonegap应用程序时,我感到非常困惑。因为我是一名新开发人员,所以我非常肯定我做的事情很愚蠢。我真的希望能够在浏览器中工作(至少在开发期间)和设备上。
目前我在init行上没有定义错误i18n
的index.html
<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>Auth Demo 2</title>
<link rel="stylesheet" href="/css/jquery.mobile.min.css" />
<script type="text/javascript" charset="utf-8" src="cordova-1.8.1.js"></script>
<script src="js/lib/zepto.min.js"></script>
<script src="js/lib/i18next.amd.withJQuery.min.js"></script>
<!-- <script src="js/lib/i18next.min.js"></script> -->
<script src="js/index.js"></script>
<script src="main.js"></script>
</head>
<body>
<script>
$(document).ready(function(){
if (navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/)) {
document.addEventListener("deviceready", onDeviceReady, false);
} else {
onDeviceReady();
}
language_complete = navigator.language.split("-");
language = (language_complete[0]);
i18n.init({ lng: language }, function() {
// save to use translation function as resources are fetched
$("#content-div").i18n();
});
});
function onDeviceReady() {
startupBehavior();
}
</script>
<div id="appPage" data-role="page">
<div data-role="header">
<h1>Auth Demo</h1>
</div>
<div id="content-div" data-role="content">
<h2>Auth demo</h2>
</div>
<div data-role="footer">
<h4>Auth demo</h4>
</div>
</div>
</body>
</html>
index.js(部分)
function startupBehavior() {
$("#content-div").children().remove(); //clear the form out
$("#content-div").append('<form id="auth_login_form">');
$("#content-div").append('<label for="Email" data-i18n="site.email"></label>');
$("#content-div").append('<input type="text" id="auth_login_email" value="" data-i18n="site.email" placeholder="Email Address old" />');
$("#content-div").append('<input type="button" id="auth_login_submit" onClick="handleLogin()">Log me in</input>');
$("#content-div").append('</form>');
}
我唯一的想法是i18next不能与zepto一起使用,或者我可能需要使用我已经看过几次提到过的require.js,但不确定这是否只是基于node.js所必需的东西,这不是。