html lang=en 与谷歌翻译的配合让我入了坑

用了css属性white-space: pre-wrap,但文本一部分被吃掉了…

起初没找到原因的我把这件事归为灵异事件,打断点看到的数据明明是正确的,可是下一秒就让我的文本不仅内容发生了改变,连万能的white-space都失灵了。我还以为是因为我第一次用这个属性。然后有什么文本格式不支持什么的,因为我当时要显示的是中文数据。可是百度了一堆,white-space就是优秀的,什么都支持,那为什么就是不换行了,还把我一部分的字给吃掉了。

于是我就手动把中文打了一遍,可能是早上脑子比较灵光。调试了一遍后,看到文本里的“吸入”两个字被改成了“取出”,我就在想,难不成是把我的字给翻译了?我用的是谷歌浏览器,设置了自动翻译。然后一看,果然是翻译了。这谷歌也是厉害了,硬生生的把我的中文翻译成另外一个中文。真是为难死它了。后来发现问题了,是因为我的html代码里把lang设置成了en了,然后我要显示的又是中文。自然就会出问题。只怪它们太智能,不能怪我粗心。哈哈哈哈,这不是没有系统的学过这些前端的东西,踩坑是必经之路是吧。嗯!是的!下次知道了,但下次出现的就不是这个问题了。。

实现谷歌在线翻译! //load方法 加载语言版本 当前版本号为1 google.load("language", "1"); //版本为1 function initialize() { //得到要翻译的内容 var text = document.getElementById("text").value; //要翻译成哪国语言 默认为中文 var toLanguage = document.getElementById("language").value; //调用google对象的检测要翻译的对象 arg1:要翻译的文本,arg2:回调函数 google.language.detect(text, function(result) { //如果返回值未出现错误(detect该函数用语检测,估计也有过滤的意思) if (!result.error && result.language) { //调用google语言api的翻译函数 //arg1:要翻译的内容,arg2:通过过滤后对象所属的语言格式,arg3:要转成的类型,arg4:回调函数 google.language.translate(text, result.language, toLanguage, function(result) { //获得要显示翻译结果textarea对象 var translated = document.getElementById("translation"); //如果对象被翻译成功 类似于java的jdbc结果集对象的 .next()方法 if (result.translation) { //设置要显示翻译结果textarea对象的html值 translated.innerHTML = result.translation; } }); } }); } // setOnLoadCallback 该函数 绑定页面加载完毕 调用initialize函数 类似于jQuery的 $(docuemnt).ready(function(){}) google.setOnLoadCallback(initialize); //选择由哪国语言翻译成另外一国语言 function to_language(str){ document.getElementById("language").value = str; if(str == "zh"){ document.getElementById("show").innerText = "英译汉"; }else if(str == "en"){ document.getElementById("show").innerText = "汉译英"; }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值