alidoing --使用JS实现多语言框架、喜欢的请进、、瓦特平台!
大家好!
多语言实现的案例:http://alidoing.com/或者http://www.alidoing.com/
图:切换语言界面
JS代码实现:
1.首先新建一个对象langobj,当然对象里面的属性值是可变的、比如数组[],都支持。
var langobj= {
"lanhelp1": "感谢:",
"lanhelp2": "提供语言翻译支持!",
"usernamea": "账号:",
"userpassa": "密码:",
"maila": "邮箱:",
"inputname": "请输入用户名!",
"inputpass": "请输入密码!",
"success": "成功!",
"inouterror": "输入中含有敏感字符!",
"pleasewait": "请稍后...!",
"loginfaild": "用户名和密码不对!"
}
上面是中文简体,只是与之对应的值不一样当变成其它语言的时候!
2.把用户选择的当前语言值存储起来、存储方式大家自己决定、 数据也可以、当使用数据库环境是asp。net的情况下要考虑js的执行顺序!
当然也可以输出像这样:src=js的存放路径!!!!!!!
document.write(unescape("%3Cscript src='" + src + "' type='text/javascript'%3E%3C/script%3E"));
接下来执行赋值方法:
function Setlang() {
try {
$("#btnregistgoto").val(alidoinglang.registname);
$("#btnlogin").val(alidoinglang.submitelogin);
$("#btnbacklogin").val(alidoinglang.backlogin);
$("#btnregist").val(alidoinglang.submite);
$("#txtnamel").attr("placeholder", alidoinglang.inputname);
$("#txtpassl").attr("placeholder", alidoinglang.inputpass);
$("#txtnamere").attr("placeholder", alidoinglang.inputname);
$("#txtpwdre").attr("placeholder", alidoinglang.inputpass);
$("#txtemail").attr("placeholder", alidoinglang.inputmailaddress);
}
catch (ex) { }
就这么简单!!!!!!!!!!!!!!!!!!!!!
优点与缺点
优点:网站开发完成上线后如果再修改语言对应的值或者添加语言时候实现起来很简单:新建一个js语言对象文件、存放在语言文件夹下、页面新建一个点击标签,便于更换,性能消耗在客户端上、减轻服务器压力
缺点:当页面需要赋值的对象非常多的时候,赋值方法写起来费劲了、性能降低,当该页面想被搜索引擎搜录时就不行了、页面全是标签、没有描述性的对象、当前的搜索引擎系统还不会根据js执行方法后来搜录数据(360搜索引擎在2012年底的时候曾经说过会支持cookie和js)后来还是没了结果!!!!
多语言实现的案例:http://alidoing.com/或者http://www.alidoing.com/
分享代码:(给我邮件:chinhiyoshi@163.com) 【我不忙的时候会第一时间发给你们】
1--之前写过jQuery+ajax+asp.net编写的通用邮件管理系统。
优点:兼容IE7+,界面简单明了、开发项目时难免会遇见一些消息发送或通知,该系统只需要一个唯一的用户ID
发送文件:源码+数据库sql。
其它代码:
http://10086bank.com/ 中除开代码工厂源码其余源码我会整理出来!
代码工厂可以快速生成html+JS+ajax+底层+sql代码、自动验证、附件自动上传! UI兼容IE7+
谢谢!
alidoing --使用JS实现多语言框架、喜欢的请进、、瓦特平台!的更多相关文章
- 基于 Vue.js 之 iView UI 框架非工程化实践记要 使用 Newtonsoft.Json 操作 JSON 字符串 基于.net core实现项目自动编译、并生成nuget包 webpack + vue 在dev和production模式下的小小区别 这样入门asp.net core 之 静态文件 这样入门asp.net core,如何
基于 Vue.js 之 iView UI 框架非工程化实践记要 像我们平日里做惯了 Java 或者 .NET 这种后端程序员,对于前端的认识还常常停留在 jQuery 时代,包括其插件在需要时就引 ...
- Ember.js和Vue.js对比,哪个框架更优秀?
本文由葡萄城技术团队于博客园翻译并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. JavaScript最初是为Web应用程序创建的.但是随着前端技术的 ...
- Ember.js和Vue.js,哪种框架更适合你?
JavaScript最初是为Web应用程序而创建的.随着前端技术的发展,比起纯JavaScript 脚本,大多数开发人员更喜欢使用基于JavaScript的框架来开发Web应用,如Vue.React等 ...
- node.js 在 Express4.0 框架使用 Connect-Busboy 实现文件上传
node.js下四种post提交数据的方式 今天说分享的是其中一种,就是上传文件. Express 4.0 以后,将功能原子化,高内聚,低耦合,独立出了很多中间件 今天主要分享文件上传 对于conne ...
- JS实现多语言方式
应用场景: 在不同移动平台(IOS,Android)上,建立一套与HTML页面通讯框架:主要业务逻辑使用HTML开发:想支持多语言开发. 动机: 通过主动发消息的方式,在页面完成初始化前,获取当前语言 ...
- JS神经网络deeplearn.js:浏览器端机器智能框架
JS神经网络deeplearn.js:浏览器端机器智能框架 通过 deeplearn.js,可以实现在浏览器中训练神经网络模型,也可在推理阶段运行预训练模型. deeplearn.js 以 TypeS ...
- JS的脚本语言
js的脚本语言全程javascript在网页里面使用的脚本语言:分类:1.嵌入网页里面2.在外部脚本标签可以写在网页的任何地方,但一般都写在网页的底部:<script type="te ...
- Atitit.js javascript的rpc框架选型
Atitit.js javascript的rpc框架选型 1. Dwr1 2. 使用AJAXRPC1 2.2. 数据类型映射表1 3. json-rpc轻量级远程调用协议介绍及使用2 3.1. 2.3 ...
- js获取浏览器语言(ie、ff、chrome)、contextpath
/js获取浏览器语言(ie.ff.chrome) var language_en_us = "en-us"; var language_zh_cn = "zh-cn&qu ...
随机推荐
- DOM操作(二)对元素的操作(创建,追加,删除)
1 创建新的 HTML 元素 (节点) var divDom=document.createElement('div'); 2 添加新元素到尾部 element.appendChild(para); ...
- 浅析HTML的元素类型及其转换
大家都知道html是由标签元素组成的,在了解元素的类型转换之前,让我们先来了解一下html的元素类型. 一.html元素类型分为两种:块级元素和内联元素,内联元素又被称为行内元素. 常见的块级元素有 ...
- css hack 浏览器携带自身特有的属性 (二)
css hack 浏览器携带自身特有的属性,才是我们真正要解决的css 兼容问题. 这里只是分享思路. 举例子: 1 outline,尤其是一些 自带继承特性的属性.这里指的是 隐性的inherite ...
- Android 虚拟导航挡住应用底部解决方案(屏幕底部的三个按键)
我在华为P6测试机上测试,发现底部的三个虚拟按钮遮挡了我的应用.类似效果如:https://www.zhihu.com/question/35292413#answer-28473700 解决方案 在 ...
- 对fgets末尾'\0'的处理
之所以要对fgets自动添加的字符进行处理的原因之一是:当你想比较输入的字符时,你会发现输入的字符和源码用来进行对比的字符一模一样,但是使用strcmp比较时就是不一样,原因就是fgets对输入字符添 ...
- Jenkins中启动从节点时,出现问题如何解决,问题:No Known Hosts...
Jenkins中,启动从节点时,出现如下问题如何解决:/root/.ssh/known_hosts [SSH] No Known Hosts file was found at /root/.ssh/ ...
- python读xml文件
# -*- coding:utf-8 -*- import jsonimport requestsimport os curpath=os.path.dirname(os.path.realpath( ...
- codeforce Gym 100500F Door Lock (二分)
根据题意略推一下,其实就是问你满足(a*(a+1))/2 < m <= ((a+1)*a(a+2))/2的a和m-(a*(a+1))/2 -1是多少. 二分求解就行了 #include&l ...
- StatementHandler-Mybatis源码系列
内容更新github地址:我飞 StatementHandler接口 StatementHandler封装了Mybatis连接数据库操作最基础的部分.因为,无论怎么封装,最终我们都是要使用JDBC和数 ...
- superset docker 部署
公众号原文有更多效果图哦 一.使用自己的数据库 1. 拉取项目 // 创建目录用于存放项目 mkdir -p /mnt/superset cd /mnt/superset git clone http ...