Javascript i18next-语言开关工作不正常
我用i18next js解决方案创建了一个语言切换器。每次我点击链接更改语言时,新语言都会显示一秒钟,然后网站会切换回init函数中设置的语言 有人知道我怎么解决吗?我认为这与Javascript i18next-语言开关工作不正常,javascript,internationalization,i18next,Javascript,Internationalization,I18next,我用i18next js解决方案创建了一个语言切换器。每次我点击链接更改语言时,新语言都会显示一秒钟,然后网站会切换回init函数中设置的语言 有人知道我怎么解决吗?我认为这与document(ready)功能有关,但当我删除此功能时,一切都不起作用:/ 谢谢大家! index.html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="h
document(ready)
功能有关,但当我删除此功能时,一切都不起作用:/
谢谢大家!
index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="js/i18next-1.7.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.i18n.init(
{
lng: 'en-US'
},
function(t) {
// translate nav
$(".nav").i18n();
});
$('.changeLng').click(function() {
$.i18n.setLng("de-DE", function(t) {
$(".nav").i18n();
});
});
});
</script>
</head>
<body>
<a href="index.html?setLng=de-DE" class="changeLng">change to de</a>
<ul class="nav">
<li>
<a href="#" data-i18n="nav.home"></a>
</li>
<li>
<a href="#" data-i18n="nav.page1"></a>
</li>
<li>
<a href="#" data-i18n="nav.page2"></a>
</li>
</ul>
</body>
</html>
$(文档).ready(函数(){
$.i18n.init(
{
液化天然气:美国
},
功能(t){
//平移导航
$(“.nav”).i18n();
});
$('.changeLng')。单击(函数(){
$.i18n.setLng(“de”,功能(t){
$(“.nav”).i18n();
});
});
});
-
-
-
尝试以下代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="js/i18next-1.7.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.i18n.init(
{
lng: 'en-US'
},
function(t) {
// translate nav
$(".nav").i18n();
});
$('.changeLng').click(function() {
$.i18n.setLng("de-DE", function(t) {
$(".nav").i18n();
});
});
});
</script>
</head>
<body>
<a href="#" class="changeLng">change to de</a>
<ul class="nav">
<li>
<a href="#" data-i18n="nav.home"></a>
</li>
<li>
<a href="#" data-i18n="nav.page1"></a>
</li>
<li>
<a href="#" data-i18n="nav.page2"></a>
</li>
</ul>
</body>
</html>
$(文档).ready(函数(){
$.i18n.init(
{
液化天然气:美国
},
功能(t){
//平移导航
$(“.nav”).i18n();
});
$('.changeLng')。单击(函数(){
$.i18n.setLng(“de”,功能(t){
$(“.nav”).i18n();
});
});
});
-
-
-
当您单击版本中的链接时,您正在重新加载页面,并且语言再次设置为“en-US”(再次调用document.ready函数)。在这个版本中,页面不会被重新加载,因此语言的变化会一直持续下去