最近在考慮把 lifetype.org.cn 透過 mod_rewrite 的方式,把網址轉換到 lifetype.org.tw,這樣可以讓更多的大陸朋友能夠來認識 LifeType。但是,首先要解決的問題是,如何做到線上簡繁互換,讓大陸網友能夠使用他們熟悉的簡體環境。
目前有幾個解決的方式:
- 透過瀏覽器的外掛程式幫忙,做到及時的簡繁互換。例如,IE 下的 Alibabar 與 Firefox 下的新同文堂。
- 透過 Server Side Script 如 PHP,寫一支簡繁轉換的 Gateway,例如在 Jerry 網頁所說的方式。
- 透過 Client Side Script 如 JavaScript 來作線上轉換,並且透過 Cookie 紀錄是否需要自動轉換成繁體或簡體。如 Joomla AutoIt! 這裡所說的方式。
第一個方式需要使用者自行安裝這些外掛程式,其實不是很方便。第二個方式要改的還不少,而且沒辦法直接使用到 blog, wiki 與 forum 上面。所以決定採用第三種方式,因為唯一的修改就是改模版。
原本很高興以為下載之後就能用,結果在繁體的環境下好像有 Bug。所以把整個程式Debug 並且 Refactoring 了一下,應該可以用在繁體了。有興趣的人請依照下列方式安裝:
- 下載我修改過的 tw_cn.zip。
- 解開後上傳到你的網站上,例如 http://your-site/tw_cn.js
- 在你希望放上『簡繁互轉』的連結的地方加上
<a id="translateLink">簡體</a>
- 然後,網頁的 </body> 標籤前面加上
<script type="text/javascript" src="http://your-site/tw_cn.js"></script>
<script type="text/javascript">
var defaultEncoding = 1;
var translateDelay = 0;
var cookieDomain = "http://your-site";
var msgToTraditionalChinese = "繁體";
var msgToSimplifiedChinese = "简体";
var translateButtonId = "translateLink";
translateInitilization();
</Script>
共有五個參數可以設定:
- defaultEncoding:網頁預設語系:1 是繁體中文,2是簡體中文。預設值為 1。
- translateDelay:延遲翻譯的時間:如果你不是放在 </body> 之前,請設定延遲翻譯時間。如 100 代表 100ms。預設值為 0。
- cookieDomain:Cookie 網址。這個請務必要設定,沒有預設值。
- msgToTraditionalChinese:切換至繁體中文的訊息。預設值為 "繁體"。
- msgToSimplifiedChinese:切換至簡體中文的訊息。預設值為 "簡體"。
- translateButtonId:簡繁互換連結的 Id。預設值為 "translateLink"。
這樣應該就可以了。不過,要是使用者的瀏覽器不支援 Javascript,那就沒輒了。
PS. 這支程式看起來流傳已久,所以不知道原始作者的釋出版權為何。所以我也沒有加上版權標示。
真實引用網址:
http://blog.markplace.net/trackback.php?id=150
迴響 ↓
回覆: 在 UTF8 編碼下的網頁簡繁互轉
Autoit 發表於 27/10/2006, 05:20
thanks for your fixed!
最近打算使用LifeType, 有问题还请多多关照丫!
回覆: 在 UTF8 編碼下的網頁簡繁互轉
龍~HSBCHK 發表於 27/10/2006, 08:20
Mark老大你這個js除了能用在LT裡,
還能在不修改內部的前提下用於其他的網站上嗎?
這是 generic solution
Mark 發表於 27/10/2006, 08:40
Hi 龍:
這是 generic solution,所以可以用在任何網頁。但是,唯一的前提是,使用者的瀏覽器要支援 javascript。 :)
Mark
還有一個bug
parrot5 發表於 03/11/2006, 01:38
謝謝你對這個原始碼的修改,尤其是cookies呢部份,真係好好用,我安裝左。 我發現左一個bug,就係我係用UTF繁體既discuz論壇,我set呢個javascript做默認繁體,但一開出黎果時d簡體字都係冇轉到… (但如果默認為簡體,則一開出黎就會轉左d繁體字做簡體,即係work)… 請問如何修改? 演示:http://test.joey-fans.net (頁內「測試」兩個係簡體字,但唔會一load頁就轉做繁體)。 謝謝。
預設是不轉換的!
Mark 發表於 03/11/2006, 03:20
mmm ... 目前的預設是,只要 Page Encoding 與 Target Encoding 是一樣的,我就不轉換。
因為這樣才能減少一些錯字發生。
Mark
明白了
parrot5 發表於 03/11/2006, 04:41
明白了… 謝謝。這個插件真是超級好用!
太好用了!!
山丘 發表於 06/11/2006, 05:10
Hi Mark
好棒的Solution..
我的網站也升級了. 感謝!
你沒嫌棄啦!
Mark 發表於 06/11/2006, 06:46
Hi Kent:
照顧廣大的簡體用戶,是台灣網路創業家的下一階段的目標啊!
Mark
謝謝,我也升級了!
nchild 發表於 06/11/2006, 14:27
第三種方式對於一般使用者的確是方便。
不過第一種方式,像是新同文堂plug-in能夠編輯辭彙轉換的部份,對於繁簡互通還是有好處的。
回覆: 在 UTF8 編碼下的網頁簡繁互轉
mickey9801 發表於 23/11/2006, 11:44
您好!
昨天試了把這個javascript放在Blog上,卻發現如果頁面上有Blog Pet的話Firefox就會彈出too much recursion的警告,而轉換就停在那裡。細仔測試過後才發現跟Flash有關,不知道可以怎麼修改呢?
支持
阿飘 發表於 27/11/2006, 13:41
支持啊
看繁体很别扭啊
回覆: 在 UTF8 編碼下的網頁簡繁互轉
Steven 發表於 05/03/2007, 05:21
Hi Mark:
使用它後,我這網站現在可以照顧廣大的簡體用戶。
我的榮幸
Mark 發表於 06/03/2007, 14:44
很高興你能用的上。
Mark
詞彙問題
永麒 發表於 10/05/2007, 03:34
外匯的"匯"字
詞彙的"彙"字
"匯"和"彙"的簡體字都是"汇"
結果"外汇"就轉成"外彙"了...
簡體字的"于"字, 也不能成功轉成"於"字...
請問如何能手動修改字庫?
謝謝~
Wikipedia:简繁一多对应校验表/汇→匯彙
http://zh.wikipedia.org/wiki/Wikipedia:%E7%AE%80%E7%B9%81%E4%B8%80%E5%A4%9A%E5%AF%B9%E5%BA%94%E6%A0%A1%E9%AA%8C%E8%A1%A8/%E6%B1%87%E2%86%92%E5%8C%AF%E5%BD%99
這個無解
markwu 發表於 10/05/2007, 07:21
可能無解!因為目前的作法是簡體 繁體一對一的轉換,而你的問題是在詞的轉換上。如果真的要解決,要改寫程式與詞庫。
在
大 發表於 10/05/2007, 09:35
發表发表测试
刷新页面又变回简体了
bgzh 發表於 04/08/2007, 03:17
刷新页面又变回简体了,,我的页面原先是简体来的,想转换为繁体
我的网站怎转不过来。。
codi 發表於 04/08/2007, 18:39
不知道是不是那里做错。。
没有效。。
http://www.codi.net.cn
請問可以預設是轉換成ie 的iso呢?
水中人 發表於 24/08/2007, 17:35
請問可以預設是轉換成ie 的iso呢?
沒辦法
Mark 發表於 25/08/2007, 02:12
這要改程式 .. mmm .. 至少要改程式裡面的 mapping table。