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


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 Draggable和Droppable实现拖拽功能
Jul 05 Javascript
javascript 控制input只允许输入的各种指定内容
Jun 19 Javascript
jQuery抛物线运动实现方法(附完整demo源码下载)
Jan 08 Javascript
深入浅析JavaScript中数据共享和数据传递
Apr 25 Javascript
javascript阻止事件冒泡和浏览器的默认行为
Jan 21 Javascript
详解用node-images 打造简易图片服务器
May 08 Javascript
详解vue嵌套路由-params传递参数
May 23 Javascript
Vue.js中组件中的slot实例详解
Jul 17 Javascript
vue里面使用mui的弹出日期选择插件实例
Sep 16 Javascript
js使用文件流下载csv文件的实现方法
Jul 15 Javascript
vue项目引入ts步骤(小结)
Oct 31 Javascript
原生javascript实现类似vue的数据绑定功能示例【观察者模式】
Feb 24 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 文件上传全攻略
2010/04/28 PHP
PHP取二进制文件头快速判断文件类型的实现代码
2013/08/05 PHP
php生成html文件方法总结
2014/12/01 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
PHP+mysql实现的三级联动菜单功能示例
2019/02/15 PHP
一句话JavaScript表单验证代码
2009/08/02 Javascript
jquery1.4后 jqDrag 拖动 不可用
2010/02/06 Javascript
jQuery之浮动窗口实现代码(两种方法)
2010/09/08 Javascript
基于Jquery的简单图片切换效果
2011/01/06 Javascript
一张表格告诉你windows.onload()与$(document).ready()的区别
2014/05/16 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
jQuery实现简洁的导航菜单效果
2015/11/23 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
jQuery插件echarts实现的单折线图效果示例【附demo源码下载】
2017/03/04 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
新手vue构建单页面应用实例代码
2017/09/18 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
原生js实现淘宝放大镜效果
2020/10/28 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
基于Vue sessionStorage实现保留搜索框搜索内容
2020/06/01 Javascript
python中cPickle类使用方法详解
2018/08/27 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
学生就业推荐信
2013/11/13 职场文书
应届生自我鉴定
2013/12/11 职场文书
幼儿园门卫制度
2014/01/29 职场文书
市场专员岗位职责
2014/02/14 职场文书
企业办公室岗位职责
2014/03/12 职场文书
质量标语大全
2014/06/12 职场文书
医学专业自荐信
2014/06/14 职场文书
2015年外贸业务员工作总结范文
2015/05/23 职场文书
歌剧魅影观后感
2015/06/05 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
Nginx访问日志及错误日志参数说明
2021/03/31 Servers
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang
MySQL中EXPLAIN语句及用法
2022/05/20 MySQL