如何在不使用PHP / Jquery重新加载页面的情况下更改语言

我正在开发一个多语言网站。 我目前包含语言短语的相关语言文件(’lange / _en.php’)。 要更改语言,用户将从项目中选择语言。 我想要做的是在页面中更改相关短语(如果可能的话也是url)而不刷新或提交页面。

我记得我在网上看到过这样的东西,但我不知道在哪里。

关于如何做到这一点的任何帮助或任何想法?

这个问题是语言更改不仅会影响页面的一小部分,而且会影响整个页面。 所以真的,你有三个选择。

  1. 确实重新加载整个页面的简单方法 。 它易于实现,易于维护,并且不需要您确保页面上当前运行的JavaScript在运行时知道新语言。

  2. 通过AJAX获取所有新标记并使用重新加载的内容替换标记的内容的复杂方法 。 这将导致运行其他脚本(例如图像轮播等)的问题,这些脚本包含对元素的引用,因此您必须重新初始化页面上settimeout()上运行的每个脚本。

  3. 接近不可能的方法是拥有客户端字典,选择每个相关标签,并使用新语言更改其内容。 这是一种痛苦的设置和维护的痛苦。 您确实需要为每个特定页面量身定制的部分。 同样,如果你有带字符串的脚本,你必须确保他们使用的字符串更新为新语言。

你最好只是重新加载页面。 它将在没有JavaScript的情况下工作,这是一次性的交易,不会打扰用户。

检查这个插件:

 http://keith-wood.name/localisation.html 

它可以“动态”改变语言而无需回到服务器端。

图像重新加载原型if-modified我发布了关于图像内容更新到所选语言而不重新加载页面。

该图像采用发送的值并更新为DB上的语言/国家/地区代码(绑定到语言),并更新图像内容(字符)以匹配其键盘布局。

希望它有一些用处