简体中文转换繁体中文(实现代码)


Posted in Javascript onDecember 25, 2013
var Default_isFT = 0        //默认是否繁体,0-简体,1-繁体   
var StranIt_Delay = 50 //翻译延时毫秒(设这个的目的是让网页先流畅的显现出来)   //-------代码开始,以下别改-------   
//转换文本   
function StranText(txt,toFT,chgTxt)  
{  
    if(txt==""||txt==null)return ""  
    toFT=toFT==null?BodyIsFt:toFT  
    if(chgTxt)txt=txt.replace((toFT?"简":"繁"),(toFT?"繁":"简"))  
    if(toFT){return Traditionalized(txt)}  
    else {return Simplized(txt)}  
}  
//转换对象,使用递归,逐层剥到文本   
function StranBody(fobj)  
{  
    if(typeof(fobj)=="object"){var obj=fobj.childNodes}  
    else   
    {  
        var tmptxt=gb2big5_Obj.innerHTML.toString()  
        if(tmptxt.indexOf("简")<0)  
        {  
            BodyIsFt=1  
            gb2big5_Obj.innerHTML=StranText(tmptxt,0,1)  
            gb2big5.title=StranText(gb2big5.title,0,1)  
        }  
        else  
        {  
            BodyIsFt=0  
            gb2big5_Obj.innerHTML=StranText(tmptxt,1,1)  
            gb2big5.title=StranText(gb2big5.title,1,1)  
        }  
        setCookie(JF_cn,BodyIsFt,7)  
        var obj=document.body.childNodes  
    }  
    for(var i=0;i<obj.length;i++)  
    {  
        var OO=obj.item(i)  
        if("||BR|HR|TEXTAREA|".indexOf("|"+OO.tagName+"|")>0||OO==gb2big5_Obj)continue;  
        if(OO.title!=""&&OO.title!=null)OO.title=StranText(OO.title);  
        if(OO.alt!=""&&OO.alt!=null)OO.alt=StranText(OO.alt);  
        if(OO.tagName=="INPUT"&&OO.value!=""&&OO.type!="text"&&OO.type!="hidden")OO.value=StranText(OO.value);  
        if(OO.nodeType==3){OO.data=StranText(OO.data)}  
        else StranBody(OO)  
    }  
}  
function JTPYStr()  
{  
    return '皑蔼碍爱翱袄奥坝罢摆败颁办绊帮绑镑谤剥饱宝报鲍辈贝钡狈备惫绷笔毕毙闭边编贬变辩辫鳖瘪濒滨宾摈饼拨钵铂驳卜补参蚕残惭惨灿苍舱仓沧厕侧册测层诧搀掺蝉馋谗缠铲产阐颤场尝长偿肠厂畅钞车彻尘陈衬撑称惩诚骋痴迟驰耻齿炽冲虫宠畴踌筹绸丑橱厨锄雏础储触处传疮闯创锤纯绰辞词赐聪葱囱从丛凑窜错达带贷担单郸掸胆惮诞弹当挡党荡档捣岛祷导盗灯邓敌涤递缔点垫电淀钓调迭谍叠钉顶锭订东动栋冻斗犊独读赌镀锻断缎兑队对吨顿钝夺鹅额讹恶饿儿尔饵贰发罚阀珐矾钒烦范贩饭访纺飞废费纷坟奋愤粪丰枫锋风疯冯缝讽凤肤辐抚辅赋复负讣妇缚该钙盖干赶秆赣冈刚钢纲岗皋镐搁鸽阁铬个给龚宫巩贡钩沟构购够蛊顾剐关观馆惯贯广规硅归龟闺轨诡柜贵刽辊滚锅国过骇韩汉阂鹤贺横轰鸿红后壶护沪户哗华画划话怀坏欢环还缓换唤痪焕涣黄谎挥辉毁贿秽会烩汇讳诲绘荤浑伙获货祸击机积饥讥鸡绩缉极辑级挤几蓟剂济计记际继纪夹荚颊贾钾价驾歼监坚笺间艰缄茧检碱硷拣捡简俭减荐槛鉴践贱见键舰剑饯渐溅涧浆蒋桨奖讲酱胶浇骄娇搅铰矫侥脚饺缴绞轿较秸阶节茎惊经颈静镜径痉竞净纠厩旧驹举据锯惧剧鹃绢杰洁结诫届紧锦仅谨进晋烬尽劲荆觉决诀绝钧军骏开凯颗壳课垦恳抠库裤夸块侩宽矿旷况亏岿窥馈溃扩阔蜡腊莱来赖蓝栏拦篮阑兰澜谰揽览懒缆烂滥捞劳涝乐镭垒类泪篱离里鲤礼丽厉励砾历沥隶俩联莲连镰怜涟帘敛脸链恋炼练粮凉两辆谅疗辽镣猎临邻鳞凛赁龄铃凌灵岭领馏刘龙聋咙笼垄拢陇楼娄搂篓芦卢颅庐炉掳卤虏鲁赂禄录陆驴吕铝侣屡缕虑滤绿峦挛孪滦乱抡轮伦仑沦纶论萝罗逻锣箩骡骆络妈玛码蚂马骂吗买麦卖迈脉瞒馒蛮满谩猫锚铆贸么霉没镁门闷们锰梦谜弥觅绵缅庙灭悯闽鸣铭谬谋亩钠纳难挠脑恼闹馁腻撵捻酿鸟聂啮镊镍柠狞宁拧泞钮纽脓浓农疟诺欧鸥殴呕沤盘庞国爱赔喷鹏骗飘频贫苹凭评泼颇扑铺朴谱脐齐骑岂启气弃讫牵扦钎铅迁签谦钱钳潜浅谴堑枪呛墙蔷强抢锹桥乔侨翘窍窃钦亲轻氢倾顷请庆琼穷趋区躯驱龋颧权劝却鹊让饶扰绕热韧认纫荣绒软锐闰润洒萨鳃赛伞丧骚扫涩杀纱筛晒闪陕赡缮伤赏烧绍赊摄慑设绅审婶肾渗声绳胜圣师狮湿诗尸时蚀实识驶势释饰视试寿兽枢输书赎属术树竖数帅双谁税顺说硕烁丝饲耸怂颂讼诵擞苏诉肃虽绥岁孙损笋缩琐锁獭挞抬摊贪瘫滩坛谭谈叹汤烫涛绦腾誊锑题体屉条贴铁厅听烃铜统头图涂团颓蜕脱鸵驮驼椭洼袜弯湾顽万网韦违围为潍维苇伟伪纬谓卫温闻纹稳问瓮挝蜗涡窝呜钨乌诬无芜吴坞雾务误锡牺袭习铣戏细虾辖峡侠狭厦锨鲜纤咸贤衔闲显险现献县馅羡宪线厢镶乡详响项萧销晓啸蝎协挟携胁谐写泻谢锌衅兴汹锈绣虚嘘须许绪续轩悬选癣绚学勋询寻驯训讯逊压鸦鸭哑亚讶阉烟盐严颜阎艳厌砚彦谚验鸯杨扬疡阳痒养样瑶摇尧遥窑谣药爷页业叶医铱颐遗仪彝蚁艺亿忆义诣议谊译异绎荫阴银饮樱婴鹰应缨莹萤营荧蝇颖哟拥佣痈踊咏涌优忧邮铀犹游诱舆鱼渔娱与屿语吁御狱誉预驭鸳渊辕园员圆缘远愿约跃钥岳粤悦阅云郧匀陨运蕴酝晕韵杂灾载攒暂赞赃脏凿枣灶责择则泽贼赠扎札轧铡闸诈斋债毡盏斩辗崭栈战绽张涨帐账胀赵蛰辙锗这贞针侦诊镇阵挣睁狰帧郑证织职执纸挚掷帜质钟终种肿众诌轴皱昼骤猪诸诛烛瞩嘱贮铸筑驻专砖转赚桩庄装妆壮状锥赘坠缀谆浊兹资渍踪综总纵邹诅组钻致钟么为只凶准启板里雳余链泄';  
}  
function FTPYStr()  
{  
    return '????勐O??W?瘟T?[?☆C???徒?????????篚U??????v????篱]?????????l?I??P??芾??????⑿Q???M?K?N???}?????y?釉??v?较s?????????L?????S?斥n???m???畏Q?驼\?????u???_??????????N????τ|??鳢?????????????????????зJ??梧??勰????????觞h??n?v?u??ПI?羿???爝f???|??蔗??叠???????|????鲷Y?侏??????嗑??蛾???????Z????吼I????????????┕???????U?????^?????麂h?????????彷o?????D?????众s????????????R????????m????????蛐M???????T??V?矽?w????????]??L???^???h????M???後?刈o???W????????g????Q?警???o???]??зV???Z?≈M?????夥?????C???????O???D?姿E?????????A?????r?????怨{?????z?A???旌????p??????????︷T?u?R??{????????豺???????e????????????????蒋d??Q???f???????※N???????镁o??H???x?a??徘G??Q???????P??ふn????煅???K?~?????r??h????U?????碣????r??????????欣|???E????疯D?绢??I?????????畹[??r??z?????z?i??磕?????????奢v?????????C????R??X???????祷\??n????Шt????]?t?稃u????????武X?H?铱|?]?V??n???\??y?噍?????S??????????????????豳I????????M?????麽??]????????糁i??????R?????????????夏X?吏[???f?俞?????????甯?Q?翕o???廪r???W???I?a????圪r?????????{?????滗??阕V????????????L??????????\??q??????????????S????J????A???c????^???????s????_??犴g???s???????⑺_????黍}???⒓???耖W?????p??B??z?卦O????鹉I?B???俾}????裨???r??????葆?????郢F?休???H?傩g?湄Q??????????q????Z????\??????q?O?p???????E???????T??U??C??l???????l???d??N????D?T?F???????E?????愁B????????H????^????芈???????胛??u??桄u?跽_?o???]??照`??抟u???蚣????{?b??B????????????????????????????[??f??y?????a?????扮n???u??????疫x???W?煸??ゑZ????壶f??????????李???????┲V????P?????蝇??u?蜻b???????I??????x?は???|???????????????膪???t???I?上?????虬b??????n????????O?逝c?Z?????????Y??@?T?A???????[???????螂E????????妮d???嘿??????????t?少\???????????直K?剌????鹁`???q?べ~?????????稍\???瓯?????????碳???S?觅|???????????????T??谫A????4u???肚f??y??铄F??????崞???n????????????殡b???㈤???????;  
}  
function Traditionalized(cc){  
    var str='',ss=JTPYStr(),tt=FTPYStr();  
    for(var i=0;i<cc.length;i++)  
    {  
        if(cc.charCodeAt(i)>10000&&ss.indexOf(cc.charAt(i))!=-1)str+=tt.charAt(ss.indexOf(cc.charAt(i)));  
        else str+=cc.charAt(i);  
    }  
    return str;  
}  
function Simplized(cc){  
    var str='',ss=JTPYStr(),tt=FTPYStr();  
    for(var i=0;i<cc.length;i++)  
    {  
        if(cc.charCodeAt(i)>10000&&tt.indexOf(cc.charAt(i))!=-1)str+=ss.charAt(tt.indexOf(cc.charAt(i)));  
        else str+=cc.charAt(i);  
    }  
    return str;  
}  
function setCookie(name, value)     //cookies设置   
{  
    var argv = setCookie.arguments;  
    var argc = setCookie.arguments.length;  
    var expires = (argc > 2) ? argv[2] : null;  
    if(expires!=null)  
    {  
        var LargeExpDate = new Date ();  
        LargeExpDate.setTime(LargeExpDate.getTime() + (expires*1000*3600*24));  
    }  
    document.cookie = name + "=" + escape (value)+((expires == null) ? "" : ("; expires=" +LargeExpDate.toGMTString()));  
}  
function getCookie(Name)            //cookies读取   
{  
    var search = Name + "="  
    if(document.cookie.length > 0)   
    {  
        offset = document.cookie.indexOf(search)  
        if(offset != -1)   
        {  
            offset += search.length  
            end = document.cookie.indexOf(";", offset)  
            if(end == -1) end = document.cookie.length  
            return unescape(document.cookie.substring(offset, end))  
         }  
    else return ""  
      }  
}  
var gb2big5_Obj=document.getElementById("gb2big5")  
if (gb2big5_Obj)  
{  
    var JF_cn="ft"+self.location.hostname.toString().replace(//./g,"")   
    var BodyIsFt=getCookie(JF_cn)  
    if(BodyIsFt!="1")BodyIsFt=Default_isFT  
    with(gb2big5_Obj)  
    {  
        if(typeof(document.all)!="object")  //非IE浏览器   
        {  
            href="javascript:StranBody()"  
        }  
        else  
        {  
            href="#";  
            onclick= new Function("StranBody();return false")  
        }  
        title=StranText("点击以繁体中文方式浏览",1,1)  
        innerHTML=StranText(innerHTML,1,1)  
    }  
    if(BodyIsFt=="1"){setTimeout("StranBody()",StranIt_Delay)}  
}

<A name="gb2big5" id="gb2big5" style="color:#FF0000">繁?中文</A>
<Script Language=Javascript Src="gb2big5.Js"></Script>
Javascript 相关文章推荐
offsetHeight在OnLoad中获取为0的现象
Jul 22 Javascript
js实现简洁大方的二级下拉菜单效果代码
Sep 01 Javascript
jquery实现邮箱自动填充提示功能
Nov 17 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
Nov 30 Javascript
js实现图片淡入淡出切换简易效果
Aug 22 Javascript
原生js的RSA和AES加密解密算法
Oct 08 Javascript
jQuery使用ajax方法解析返回的json数据功能示例
Jan 10 Javascript
微信小程序 Nginx环境配置详细介绍
Feb 14 Javascript
vue router+vuex实现首页登录验证判断逻辑
May 17 Javascript
node express使用HTML模板的方法示例
Aug 22 Javascript
vue学习之Vue-Router用法实例分析
Jan 06 Javascript
Vue实现input宽度随文字长度自适应操作
Jul 29 Javascript
在jquery中combobox多选的不兼容问题总结
Dec 24 #Javascript
append和appendTo的区别以及appendChild用法
Dec 24 #Javascript
setTimeout()与setInterval()方法区别介绍
Dec 24 #Javascript
Jquery 动态生成表格示例代码
Dec 24 #Javascript
js 异步操作回调函数如何控制执行顺序
Dec 24 #Javascript
表格奇偶行设置不同颜色的核心JS代码
Dec 24 #Javascript
js中function()使用方法
Dec 24 #Javascript
You might like
PHP生成树的方法
2015/07/28 PHP
PHP数组游标实现对数组的各种操作详解
2016/01/26 PHP
Yii针对添加行的增删改查操作示例
2016/10/18 PHP
yii2 url重写并隐藏index.php方法
2018/12/10 PHP
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
javascript:history.go()和History.back()的区别及应用
2012/11/25 Javascript
js保留小数点后几位的写法
2014/01/03 Javascript
javascript屏蔽右键代码
2014/05/15 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
vant(ZanUi)结合async-validator实现表单验证的方法
2018/12/06 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
JavaScript仿京东秒杀倒计时
2020/03/17 Javascript
[02:32]“虐狗”镜头慎点 2016国际邀请赛中国区预选赛现场玩家采访
2016/06/28 DOTA
[01:00:53]OG vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[00:23]魔方之谜解锁款式
2018/12/20 DOTA
详解PANDAS 数据合并与重塑(join/merge篇)
2019/07/09 Python
django和vue实现数据交互的方法
2019/08/21 Python
python中关于数据类型的学习笔记
2020/07/19 Python
python定义具名元组实例操作
2021/02/28 Python
美国一家全面的在线零售鞋类公司:SHOEBACCA
2017/01/06 全球购物
新东方旗下远程教育网站:新东方在线
2020/03/19 全球购物
Linux内核的同步机制是什么?主要有哪几种内核锁
2016/07/11 面试题
毕业生教师求职信
2013/10/20 职场文书
经济管理专业毕业生推荐信
2013/11/11 职场文书
公证书样本
2014/04/10 职场文书
项目经理任命书内容
2014/06/06 职场文书
公司活动总结范文
2014/07/01 职场文书
授权委托书
2014/07/31 职场文书
会计试用期自我评价
2015/03/10 职场文书
2016年大学自主招生自荐信范文
2015/03/24 职场文书
公司更名通知函
2015/04/24 职场文书
医学会议开幕词
2016/03/03 职场文书
利用Nginx代理如何解决前端跨域问题详析
2021/04/02 Servers
MySql 缓存查询原理与缓存监控和索引监控介绍
2021/07/02 MySQL
python+opencv实现目标跟踪过程
2022/06/21 Python