位置: 编程技术 - 正文

基于JavaScript实现快速转换文本语言(繁体中文和简体中文)(基于javascript的毕业设计)

编辑:rootadmin

推荐整理分享基于JavaScript实现快速转换文本语言(繁体中文和简体中文)(基于javascript的毕业设计),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js基于什么,基于JAVASCRIPT实现的可视化工具是,基于JAVASCRIPT实现的可视化工具是,javascript运用,基于JAVASCRIPT实现的可视化工具是,基于javascript的毕业设计选题,基于javascript的毕业设计,基于JAVASCRIPT实现的可视化工具是,内容如对您有帮助,希望把文章链接给更多的朋友!

一般商业网站都有一个语言的需求,就是为了照顾使用正体中文的国人,会特地提供一个切换到正体中文的选项(或曰“繁体中文”)。传统做法是在服务端完成的,即通过某些控件或者过滤器转换文本语言。这里笔者介绍一种简单可行的方法,不是在服务端而是利用前端的 JavaScript 就可以切换正体中文。如下图,我们把切换按钮放在页脚(当然你也可以放置在“导航”或者其他更醒目的位置)。

由于页面假设设定均使用 Unicode 字符集,于是一般不用考虑 GB/BIG5 字符集问题,伟大的 Unicode 字符集已经涵盖了繁体字的字符了(UTF-8 编码)。

怎么在页面调用这个功能呢?很简单,首先引入下面 Js(注意还依赖 Function.prototype.delegate(), 下面会提及):

基于JavaScript实现快速转换文本语言(繁体中文和简体中文)(基于javascript的毕业设计)

然后绑定按钮事件,我们简单地使用 onclick 绑定来全局函数 window.toChinese(el)、window.toSimpleChinese(el)。el 是按钮元素。

js 代码中比较长的两个字符串变量分别是简体中文和繁体中文,他们切换没有什么神奇之处,只是所有文本经过这些变量一一对应即可。当然这里只是常用的繁简对应,而且是机械的,有些特殊的翻译需要联系上下文的,这种高级转换不在此讨论之列。

首先我们看看变量函数 translate,执行它会通过递归遍历完整个 DOM(可以说比较笨的方法)

转换 DOM 内容,我们第一时间想到的可能是 el.innerHTML,但其实大可不必,而且递归的时候不太方便。不妨再想想看,我们其实只需要对文本转换即可,DOM API 能够判断 文本节点(node.nodeType == 3),然后可读可写的 data 属性就是设置文本的(textNode.data),由此我们就是完成到繁体的切换。节点其他属性 title、alt、value 也是同样原理。另外,if (("||BR|HR|TEXTAREA|".indexOf("|" + node.tagName + "|")) > 0)continue; 是排除某些节点的方法,其思路比较特别,可以多借鉴下。

至于 coverntFn 是一函数参数。通过根函数 translateText(text, isBig5) 新生成两个函数 :var traditionalized = translateText.delegate(null, true), simplized = translateText.delegate(null, false);

Function.prototype.delegate() 方法如下。

繁简的转换基本如此了。值得一提的是,浏览器其实替我们识别语言环境的变量,主要是 navigator.userLanguage || navigator.language。这个变量在服务端也可以获取,头读取:Request.ServerVariables("http_accept_language")。

最后我们还通过 cookie 来保存语言状态。

标签: 基于javascript的毕业设计

本文链接地址:https://www.jiuchutong.com/biancheng/378968.html 转载请保留说明!

上一篇:论JavaScript模块化编程(javascript module)

下一篇:javascript特殊日历控件分享(js特殊字符有哪些)

  • 金税啥意思
  • 小规模开专票附加税要计提吗
  • 电子发票开票方怎么做账
  • 专用发票给客户的是第几联
  • 库存商品进价成本
  • 委托加工继续生产增值税计入成本吗
  • 报税时其他收入
  • 费用的完成率怎么计算
  • 受托方的计税价格是什么意思
  • 代扣业务员佣金怎么做账
  • 快递费需要计提吗
  • 专家评审费个人所得税计算公式
  • 营改增通知规定的税收优惠政策
  • 事业单位取得的财政拨款免税吗
  • 以实物投资的税种有哪些
  • 电商确认收货
  • 制作费用怎么转入成本
  • 其他应收款押金计提坏账吗
  • 小规模纳税人如何交增值税
  • 商品残次品怎样定义
  • 会计谨慎性原则是指
  • 企业老板机票怎么报销记账
  • 债权人和债务人未经保证人同意变更
  • 行政划拨无偿取得的土地使用权属于什么资产
  • 小规模纳税人增值税专用发票税率
  • 个体户一般纳税人可以开13个点的专票吗
  • win8电脑系统还原
  • windowsserver2019安装教程
  • 企业购买银行理财
  • 公司账户存款
  • 继续涉入资产后续计量
  • 灰狼算法的改进
  • vueconfigjs配置proxy 无效
  • 任意盈余公积金的用途
  • 企业职工教育培训
  • 库存现金盘盈怎么做账
  • 基于Python实现五大常用分类算法(原理+代码)
  • chrome浏览器快捷方式
  • PHP面向对象程序设计调研
  • JavaScript之Ajax-axios表单提交
  • win11怎么通过ip连接打印机
  • php注册和登录界面
  • 增值税发票复印件可以入账吗与原件一致
  • phpipam安装
  • wordpress整站备份
  • python的顺序
  • 增值税普通发票有什么用
  • 城镇土地使用税减免税政策
  • 委托代销受托方会计分录
  • Uncaught DONException: Failed to execute ‘atob‘ on “window ‘: The string to be decoded is not carrec...
  • mysql中join的用法
  • 不是公司员工差旅费可以入差旅费吗
  • 企业所得税季末资产总额
  • 购货发票属于是什么凭证
  • 什么情况下需要做心脏造影
  • 资本公积的用途有哪些
  • 营业税金及附加是什么科目
  • 核定征收怎么收
  • 原材料用于在建工程
  • 没收租赁保证金要交增值税么
  • 电商会计怎么做账
  • 研发费用入账
  • 项目建设期间所涉及的税
  • centos rpm安装方法
  • win7系统屏幕键盘怎么打开
  • win10共享提示
  • xp系统修改分辨率
  • u盘怎么安装win7镜像文件
  • 笔记本怎么设置定时关机
  • win7空间不足
  • python列表详解
  • unity3d ngui-TweenRotation翻牌动画
  • 安卓wifimanager详解
  • javascript什么用
  • jquery时钟插件
  • node-js
  • javascript基础入门视频教程
  • 深入理解新发展理念心得体会3篇
  • 电子发票票种核定申请
  • 国网福建电力微信公众
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设