网页前端分析:关于淘宝页面编码的疑惑

因为即将开始淘宝的项目,在前端方面必然要深入了解taobao ued规范,规范还是比较全的,只是对taobao.com的编码和字符集的选择有很多困惑,由于历史原因,taobao的页面编码是ASCII编码,字符集采用gb2312,这并无不妥,麻烦的仅仅是做代码开发的时候要抽出精力去对付复杂多元的字符集,比如在taobao首页是ASCII,页面的meta中指定的字符集是GB18030,但在window下,用firefox另存页面到本地后,发现meta字段的字符集变为gb2312,而且在ie中打开淘宝首页,浏览器认为的字符集是gb2312,但gb18030本身范围比gb2312要大,所以万一有越界字符出现,浏览器也会使用gb18030的字符集解释页面。

在纯粹的html中,这种相同编码字符集不同所带来的隐患通常会被越来越强大的A级浏览器hack掉,所以只要采用大致兼容的gb字符集,页面大概不会有异常。但当一个ascII码的html去引用utf编码的css或者js文件的时候,则必须指定引用文件的编码。但让人困惑的是,在taobao首页中却存在引用非标注编码的utf文件,而且不是个例,比如taobao首页尾部的tbra-fp.js,就没有指定其编码,

<script type="text/javascript" src="http://assets.taobaocdn.com/tbra/1.0/tbra-fp.js?t=20090619.js"></script>

而这里的tbra-fp.js却是utf8的编码,还好这个文件中只有英文,而且没有ajax相关的代码,音位utf和ascII在英文范围是可以兼通的,这个文件还算比较正确的能和首页协同工作。而在首页最下方的几个沙箱引用的几个js文件则规范的标注了charset=gb2312,

<script type="text/javascript" src="http://cn2.adserver.yahoo.com/a?f=2121060025&p=cntaobao&l=TBT1&c=r" charset="gb2312"></script>

且这几个沙箱引用的js也确实是ASCII编码的文件,因为js中含有中文字符,为了避免乱码则必须html编码保持一致。上述这种文件编码不统一的现象在首页还有几处存在,大概是bug吧。

我们说gb系列的字符集都是基于ASCII的扩展,只是各个字符集的扩展程度不一致,而且不同的字符集可能会有重叠的现象,毕竟每一种扩展都是各个国家或者地区单独行动,比如gb2312和big5为了能显示简体和繁体中文分别对ASCII作各自扩充,而这两种扩充得到的字符集是不兼容的。也就是说一个包含简体和繁体字的文件,不可能同时使用gb2312和big5来同时正确显示所有的汉字。而且gb2312的汉字个数本来就不多,所以采用gb2312来处理中文是有很多隐患的。如果遇到前端和后台的字符集不一致的情况,会很麻烦。在taobao首页的源码中就有很多这种情况:


而调试编码和字符集是需要不小的时间和精力的。如果正站统一采用unicode字符集的话,大概就不会出现各种各样编码不一造成的开发成本浪费和软件隐患了。嗨,这也是做全站架构的时候需要考虑的事情,做开发的话只需去遵循规范就好了,只是在开发的时候细心一点,保证文件编码和字符集保持一致即可,无他。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索taobao
, 文件
, 编码
, 页面
, 字符集
, 前端乱码
, js html规范
, 字符集的一些疑惑
, 首页
统一页面编码
,以便于您获取更多的相关知识。

时间: 2024-10-04 16:11:37

网页前端分析:关于淘宝页面编码的疑惑的相关文章

php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法_php实例

 php的curl可以用来实现抓取网页,分析网页数据用, 简洁易用, 这里介绍其函数等就不详细描述, 放上代码看看: 只保留了其中几个主要的函数. 实现模拟登陆, 其中可能涉及到session捕获, 然后前后页面涉及参数提供形式. libcurl主要功能就是用不同的协议连接和沟通不同的服务器~也就是相当封装了的sock PHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)., libcurl当前支持http, https, ftp, gopher, telnet, dict,

php+curl+302+淘宝-用curl抓取淘宝页面信息,本地可以,服务器却不行

问题描述 用curl抓取淘宝页面信息,本地可以,服务器却不行 看下面的代码,在本地appach服务器可以正常打印出页面内容,但是到服务器上却提示15s 的timeout错误: $htmlstr = get_html("http://detail.tmall.com/item.htm?id=41159437194"); echo $htmlstr; function get_html( $url ) { $ch = curl_init(); curl_setopt($ch, CURLOP

官方证实手机淘宝正式关闭了微信跳转至淘宝页面的通道

昨日,官方证实手机淘宝正式关闭了微信跳转至淘宝页面的通道.在微信点击相关链接后,页面将自动跳转至下载安装页面.而就在不久前,微信封杀了有关阿里"来往"的链接,手机淘宝此举或为报复. 淘宝方面表示,封杀原因是大量用户反应,微信公众平台发来的淘宝链接大部分是伪造淘宝店,部分用户因此受到财产损失,甚至支付账号.密码被窃.而对于何时能够打开微信通道,淘宝方面表示,这取决于微信什么时候能够补上自己的安全漏洞. 阿里系的协同 2013年是中国互联网的投资年,阿里巴巴也做了大量收购,这些阿里的子公司

php 自动登录淘宝 跳转淘宝页面

问题描述 php 自动登录淘宝 跳转淘宝页面 数据库里有一堆淘宝用户名和密码 怎么在自己的网页里提供一个 一键登录淘宝功能(原始需求是用户可以不用输入用户名和密码) 然后就可以跳转到已登录的淘宝主页

百度重新收录淘宝页面 淘宝客作用日益淡化

百度时隔三年再度收录淘宝 近日有多位站长向站长网admin5.com爆料,称百度时隔三年后再度重新收录淘宝网页面.通过site指令可以发现,百度确实重新收录淘宝,搜索结果有28万之多,前六页基本为淘宝网旗下产品和淘宝商城知名网店的二级域名,而后面的页面则开始收录淘宝店铺的网址.快照方面,大部分为8月中旬和9月初最新.通过查看淘宝网的robots.txt可以发现,淘宝对于百度蜘蛛依然处于禁止状态.基本可以确定百度单方面已经重新开放对淘宝页面的收录.作为国内互联网的两家巨头,百度和阿里在电子商务方面

jsp页面里面想做一个积分兑换商城,有什么控件能够像淘宝页面那样一个个格子的几排的

问题描述 jsp页面里面想做一个积分兑换商城,有什么控件能够像淘宝页面那样一个个格子的几排的 jsp页面里面想做一个积分兑换商城,有什么控件能够像淘宝页面那样一个个格子的几排的样子

JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析_javascript技巧

淘宝图片处理讨论淘宝网页面很大,但是打开速度很快.其对图片处理是运用了滚动加载,就是滚动轴滚到哪里,图片在哪里加载.但是你想查看他的源代码,那要费九牛二虎之力吧,因为他们代码压缩合并做的很好!因为图片是滚动加载的,初始化的时候图片不加载,那么当你在页面底部刷新页面的时候,底部的页面通常不会加载出来,淘宝网的做法貌似是(因为我没有看他们的源代码,只是凭操作),刷新让页面回到顶部. 模仿淘宝,做滚动图片加载 这里想到了三种方法:1.javascript懒加载之可视区域加载 <!DOCTYPE htm

蓝天亭分析如何看待淘宝向大流量活动挥刀

  前几天写了一篇[淘宝网将排除聚划算对排名的影响] 当时我估计淘宝网会逐渐撤销某些类目产品的聚划算的交易笔数对淘宝商品搜索排名的影响,出乎意料的是,淘宝网撤销所有类目商品的聚划算交易笔数对搜索的排名影响.不仅如此,淘宝网继续向大流量的活动挥刀,撤销参与活动后,交易笔数对淘宝搜索排名的影响. 具体内容为: 本次调整"搜索结果页面"和"类目宝贝列表页面"中的"最近成交笔数",将去掉"聚划算"."天天特价".&

jquery防百度百科/淘宝/页面滚动效果

例1 ,防百度百科页面滚动效果    代码如下 复制代码 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>jquery防百度百科页面滚动效果</title> <link rel="stylesheet" type="text/css" href="css/main.css" /&