论坛首页 Web前端技术论坛

12306订票网站首页时间显示六大缺陷!及我的小重构!

浏览 21639 次
该帖已经被评为隐藏帖
作者 正文
   发表时间:2011-11-20   最后修改:2011-11-24
引子:看新闻看到铁道部官网可以在线订票了。作为一个It领域的学生。
我想先去注册下。没想到。
投隐藏的可以发表下看法吗?怎样改进?
看到了后面的代码,如下:
<marquee onmouseout="this.start()" onmouseover="this.stop()" scrollamount="3" scrolldelay="100" width="260">
                  <font style="font-size: 14px;" color="blue">全路旅客列车互联网售票系统调试正在进行中,给您带来不便,请谅解。</font>
                </marquee>

已经改进:变成文明用语了。嗯。我们应该多宽容些!
感谢:panduozhi 的善意提醒!

------当我下面是纯技术的讨论吧。或者善意的提醒!为什么就是有人看贴不仔细,就直接骂人呢?

刚发新闻就有调试啊?不会测试好了在发啊?国家级别的网站啊!有木有阿?
!!还用一个marquee来做啊!还挤在中间阿!有木有啊!!!!

作为一个好学生,我准备给他们提意见。
然后就想。应该全面指出他们那些地方不对。应该怎么改。既提问题,也提供解决方案!

先是一个用js显示时间的的js。html代码如下:
          <td><div align="center">
	  <script language="JavaScript" src="./images/date.js" type="text/javascript" class="time"></script></div></td>


date.js文件内容如下:
<!--
var nd, mo, y, da;
nd=new Date();
mo=nd.getMonth()+1;
y=nd.getYear();
if(y<80)y+=2000;
if(y>=80&y<=138)y+=1900;
da=nd.getDay();
document.write("<font LANG='ZH-CN' color=#FFFF99>"+y+"年"+mo+"月"+nd.getDate()+"日 "+"</font> ");

//time
document.write("<span id='Clock' style='font-size:12px; color=#FFFF999'></span>");

var wee;
wee=new Array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");
document.write("<font color=#FFFF99>"+wee[da]+"</font> ");

//time
document.write("<span id='Clock' style='font-size:12px; color=#FFFF99'></span>");

//-->



批评一已经有说明时间应该从服务端传了!还有人用这点来骂我!晕
批评一:
浪费宽带啊!
显示一个时间,从后台传过来只要十多个字节就可以了。你传一个文件过来。
传输量大了好几时倍啊!
而且增加了一次http请求。浪费啊!增加了浏览器的解析量啊!


批评二:无用代码重复。
那个span标签写了两次。但是没有用啊!

批评三:落后。
居然写个span不用然后用<font>啊!算什么意思麻!


批评四:用C的习惯来写js代码啊!
先申明变量。然后。。。,有必要吗?

批评五:命名太小气啊。
该省的地方不省。不该省的地方,装小气。什么意思吗?

批评六:居然不压缩。
这个能节约很多宽带啊!
最重要的是,不会有我这篇骂你们的文章了。

下面是单纯对js进行重构!
下面在使用js的基础上我对上面的js进行重构。如下:
var now = new Date(),
	year = now.getFullYear(),
	month = now.getMonth()+1,
	day = now.getDate(),
	dayOfWeek = now.getDay();
var dates=['日','一','二','三','四','五','六'];
document.write("<span style='color:#ff9'>"+year+"年"+month+"月"+day+"日"+" 星期"+dates[dayOfWeek]);

后面在去除出now之外的本体变量!
==========================================
先回去睡觉了。
求各位有经验的fronter指点!

===============去除中间变量=========
在看《重构》以书,我对一个观点比较困惑。后来,看了。kent beck的《实现模式》之后。即临时变量的取舍。
我有放心了。
像上面的代码。除了now之外。其他临时变量声明之后只使用了一次。因此,按重构一书的看法。
这样的临时变量应该去除。
var now = new Date();
var dates=['日','一','二','三','四','五','六'];
document.write("<span style='color:#ff9'>"+ now.getFullYear()+"年"+(now.getMonth()+1)+"月"+now.getDate()+"日"+" 星期"+dates[now.getDay()]);


这样代码,就简洁多了。嗯。


   发表时间:2011-11-21  
要挣铁道部的钱 就是这样啊 要不然各大企业都喜欢做国企的业务呢 对半分成啊
0 请登录后投票
   发表时间:2011-11-22  
<marquee>是何物,DHTML的东西吗?
0 请登录后投票
   发表时间:2011-11-22  
网站没压缩,雷到我了。。
0 请登录后投票
   发表时间:2011-11-22  
比不是这样装的。隐藏吧。
0 请登录后投票
   发表时间:2011-11-22  
我去试了试,所有的浏览器都报该网址不安全,难道有人已经那个了?
0 请登录后投票
   发表时间:2011-11-22  
axiheyhey 写道
<marquee>是何物,DHTML的东西吗?
就是ms搞出来的一个标签。叫跑马灯。
一个标签控制行为。不被被W3C接纳!
0 请登录后投票
   发表时间:2011-11-22  
比真不是这样装的
0 请登录后投票
   发表时间:2011-11-22  
yangguo 写道
比不是这样装的。隐藏吧。

求指点!
我觉得,我指出的这几点。应该是一个网站上线都必须要考虑的。
不是我装逼。我只是失望!
0 请登录后投票
   发表时间:2011-11-22  
axiheyhey 写道
网站没压缩,雷到我了。。

我是指js文件没有压缩。

嗯。就算说成网站没压缩,我觉得也不为错吧!
把html文档。压缩成一行。也可以减少很多换行符啊!
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics