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


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 相关文章推荐
jquery JSON的解析方式
Jul 25 Javascript
基于jquery的固定表头和列头的代码
May 03 Javascript
js浮动图片的动态效果
Jul 10 Javascript
jquery触发a标签跳转事件示例代码
Jul 21 Javascript
创建、调用JavaScript对象的方法集锦
Dec 24 Javascript
jQuery计算文本框字数及限制文本框字数的方法
Mar 01 Javascript
基于BootStrap环境写jQuery tabs插件
Jul 12 Javascript
基于JavaScript实现购物网站商品放大镜效果
Sep 06 Javascript
浅谈js中几种实用的跨域方法原理详解
Dec 02 Javascript
wap手机端解决返回上一页的js实例
Dec 08 Javascript
JS实现上传图片的三种方法并实现预览图片功能
Jul 14 Javascript
详解js中的几种常用设计模式
Jul 16 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解析url的三个示例
2014/01/20 PHP
php以fastCGI的方式运行时文件系统权限问题及解决方法
2015/05/11 PHP
php经典算法集锦
2015/11/14 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
JQuery ztree 异步加载实例讲解
2016/02/25 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
js截取字符串功能的实现方法
2017/09/27 Javascript
浅谈Angular文字折叠展开组件的原理分析
2017/11/24 Javascript
基于vue2实现上拉加载功能
2017/11/28 Javascript
vue + vuex todolist的实现示例代码
2018/03/09 Javascript
再谈Angular4 脏值检测(性能优化)
2018/04/23 Javascript
JavaScript偏函数与柯里化实例详解
2019/03/27 Javascript
Flutter部件内部状态管理小结之实现Vue的v-model功能
2019/06/11 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
jquery.pager.js分页实现详解
2019/07/29 jQuery
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
vue实现五子棋游戏
2020/05/28 Javascript
JS+Canvas实现五子棋游戏
2020/08/26 Javascript
vue 通过 Prop 向子组件传递数据的实现方法
2020/10/30 Javascript
[38:23]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第一场
2014/05/24 DOTA
python实现统计代码行数的方法
2015/05/22 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
2018/10/15 Python
浅谈Python在pycharm中的调试(debug)
2018/11/29 Python
Python代码打开本地.mp4格式文件的方法
2019/01/03 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
python里 super类的工作原理详解
2019/06/19 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
2019/09/17 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
幼儿园师德师风学习材料
2014/05/29 职场文书
写给领导的感谢信
2015/01/22 职场文书
2015年教师节感言
2015/08/03 职场文书
古诗之爱国古诗5首
2019/09/20 职场文书
win10搭建配置ftp服务器的方法
2022/08/05 Servers