Home » jQuery 外掛

[jQ]jQuery Localisation 1.0.5

範例 1
沒錯!只要 900 元就能獲得我們團隊完整的協助,讓效果能迅速的整合到您的網站,並保證瀏覽器的相容性。
立刻申請!

jQuery Localisation 1.0.4

開發網頁很有可能會遇到要做多國語言的問題,像 ASP.NET 等的 Server 端程式可能都有提供相關的套件來達到效果,但是前端JavaScript 要怎樣做到多國語言呢?

筆者曾經也做過類似的多國語言程式,不過當時只需要英文及繁體中文兩種而已,所以用了比較簡單的作法來完成。不過現在若還有同樣需求的話,筆者會改採用 jQuery Localisation 來做。

jQuery Localisation 在使用時要先指定一個預設的語言檔,例如:lang.js,接著其它語言檔名就依瀏覽器所取到的 language 名稱為主,因此像是繁體中文的語言檔名就變成了 lang-zh-TW.js,簡體中文就是 lang-zh-CN.js。

套件名稱:jQuery Localisation
套件版本:1.0.5
作者網站:http://keith-wood.name/localisation.html
套件網址:http://plugins.jquery.com/project/localisation
發佈日期:2010-07-03
檔案大小:4.01 KB
檔案下載:jquery.localisation.js
其它語言檔:greeting.js greeting-en.js greeting-zh-CN.js greeting-zh-TW.js

參數說明:

檢視原始碼 JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
packages(必填參數)
描述: 要載入的 js 語言檔的前綴名稱(可加上路徑), 可為字串或是字串陣列[]
預設值: 無
 
settings(選填)
描述: 如果提供的是字串則表示指定得語系; 或者是包含了進階設定參數的物件。其中物件的屬性有 language, loadBase, path 及 timeout
預設值: 無
 
language(選填)
描述: 指定載入的語言,這邊以瀏覽器所取得的 language 為主
預設值: 無
 
loadBase(選填)
描述: 是否載入預設的 js 語言檔
預設值: false
 
path(選填)
描述: 語言檔的路徑
預設值: 無
 
timeout(選填)
描述: 載入語言檔的等待時間,若設為 0 表示一直等待
預設值: 500

屬性說明:

檢視原始碼 JavaScript
1
2
$.localise.defaultLanguage
描述:指定預設的語言

方法說明:

檢視原始碼 JavaScript
1
2
// 載入語言檔
$.localise (packages[, settings][, loadBase][, path][, timeout]);

使用範例:

檢視原始碼 JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.localisation.js"></script>
<script type="text/javascript">
	$(function(){
		// 載入以 greeting 為前綴的語言檔
		// 並同時載入 greeting.js 為預設的語言檔
		// 語言檔的路徑是在 js/lang 中
		$.localise('greeting', {loadBase: true, path: 'js/lang/'});
		// 變更顯示在介面上的語言文字
		changeLangs();
		// 當選擇了其它語言時就載入該語言的語言檔
		// 並變更顯示在介面上的語言文字
		$("#selLan").change(function(){
			$.localise('js/lang/greeting', {loadBase: true, language: $(this).val()});
			changeLangs();
		});
	});
 
	// 變更顯示在介面上的語言文字的函式
	function changeLangs(){
		// 設定 .selTitle 的文字內容為變數 selTitle 的值
		$(".selTitle").html(selTitle);
		// 一一指定 #selLan 的 option 的文字內容為變數 selOptionN 的值
		// 並設定 #selLan 的寬為 200
		$("#selLan option").each(function(i){
			$(this).text(eval("selOption" + (i+1)));
		}).parent().css({"width": 200});
		// 設定 .show 的文字內容為變數 greeting 的值
		$(".show").html(greeting);
	}
</script>
 
<body>
	<h3 class="selTitle"></h3>
	<select id="selLan">
		<option value="zh-TW"></option>
		<option value="zh-CN"></option>
		<option value="en"></option>
		<option value="unknown"></option>
	</select>
	<h3 class="show"></h3>
</body>
範例 1

檔案描述
基本的範例檔案(免空) 開始下載
基本的範例檔案 會員限定

32 筆針對 [jQ]jQuery Localisation 1.0.5 的迴響

  1. 程式碼的設定是依照電腦時區自動代入,請問要如何修改成"預設英文",然後我如果點了英文,當下有翻譯,不過一跳頁後,又自動跳回中文,請問要如何讓語系固定住?

  2. 我也有跳下頁又換回預設語言的問題,請問一下這該如何處理呢?
    在遊覽器關閉前或點切換語言前都保持舊語言,
    請問該如何固定呢?

發表迴響