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


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 相关文章推荐
Javascript - HTML的request类
Jul 15 Javascript
javascript getElementsByClassName函数
Apr 01 Javascript
javaScript同意等待代码实现心得
Jan 01 Javascript
js如何判断用户是在PC端和还是移动端访问
Apr 24 Javascript
基于JavaScript代码实现随机漂浮图片广告
Jan 05 Javascript
AngularJS通过$location获取及改变当前页面的URL
Sep 23 Javascript
xmlplus组件设计系列之图标(ICON)(1)
May 05 Javascript
Vue实现点击后文字变色切换方法
Feb 11 Javascript
Vue使用axios出现options请求方法
May 30 Javascript
Vuex的各个模块封装的实现
Jun 05 Javascript
vue 动态生成拓扑图的示例
Jan 03 Vue.js
JavaScript获取URL参数的方法分享
Apr 07 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
DSP接收机前端设想
2021/03/02 无线电
php正则表达式使用的详细介绍
2013/04/27 PHP
PHP的魔术常量__METHOD__简介
2014/07/08 PHP
php与Mysql的一些简单的操作
2015/02/26 PHP
PHP时间处理类操作示例
2018/09/05 PHP
一款JavaScript压缩工具:X2JSCompactor
2007/06/13 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
js Math 对象的方法
2013/09/01 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
JavaScript使用Math.Min返回两个数中较小数的方法
2015/04/06 Javascript
jQuery实现在下拉列表选择时获取json数据的方法
2015/04/16 Javascript
JS+CSS实现仿雅虎另类滑动门切换效果
2015/10/13 Javascript
JS验证邮件地址格式方法小结
2015/12/01 Javascript
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
vue中音频wavesurfer.js的使用方法
2020/02/20 Vue.js
jquery绑定事件 bind和on的用法与区别分析
2020/05/22 jQuery
js 动态校验开始结束时间的实现代码
2020/05/25 Javascript
vue中使用腾讯云Im的示例
2020/10/23 Javascript
[04:21]狐狸妈带你到现场 DOTA2 TI中国区预选赛线下赛路线指引
2014/05/22 DOTA
使用python opencv对目录下图片进行去重的方法
2019/01/12 Python
Django CSRF认证的几种解决方案
2020/03/03 Python
BeautifulSoup获取指定class样式的div的实现
2020/12/07 Python
CSS3 绘制BMW logo实的现代码
2013/04/25 HTML / CSS
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
中国跨境在线时尚零售商:Bellelily
2018/04/06 全球购物
你所知道的集合类都有哪些?主要方法?
2012/12/31 面试题
What is EJB
2016/07/22 面试题
简历上的自我评价怎么写
2014/01/28 职场文书
见习期自我鉴定
2014/01/31 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
2016年入党心得体会范文
2016/01/23 职场文书
go语言中fallthrough的用法说明
2021/05/06 Golang
python爬取网页版QQ空间,生成各类图表
2021/06/02 Python
铁头也玩根德 YachtBoy YB-230......
2022/04/05 无线电
利用正则表达式匹配浮点型数据
2022/05/30 Java/Android