最近在弄毕业设计,总有个现象,就是一个段落,自己吐墨水的话,吐不超过两句就吐完了。回头看看博客,发现这一年来,才3篇文章,原来是这样才缺乏墨水啊。
其实这一年来,实践的东西还挺多的,拿CSS来说话吧,曾经对CSS的理解,就是知道个文档流,然后浮动的元素会离开文档流,一切的布局都从文档流入手。如今,神马包含块,神马层叠上下文,神马BFC,基本都吃透,布局手段多了去了。别总一股脑的浮动布局,浮动的初衷是图文混排啊。利用包含块,该绝对定位就绝对定位,还可以轻易在 overflow:hidden里面的做弹窗。
吐槽jQuery UI和jQuery Mobile
UI也好,Mobile也好,总是喜欢开发者写少量代码,由JS动态写入完整代码,并保障可用性。JS生成的代码,这是保障的哪门子的可用性。那些没有JS的读屏器,那些急速模式下的浏览器,怎么读得到这部分数据。
前端起来了,肥客户端也慢慢起来了,JS的流程优化对性能影响尤为重要。见过一个没优化JS流程的页面,Highchart和jQueryUI同时争夺浏览器资源,直接后果是打开页面要卡那么一两秒,页面才能正常显示,这已经是在Chrome下面了,IE更是惨不忍睹。
那个案例里面,jQueryUI是历史原因,单单CSS就可以很好的处理,至于write less do more,可以交给后端模版的嘛,这些东西就别和Highchart这类数据渲染的JS抢浏览器资源了吧。尤其是Mobile,卡顿都是给Enhancements搞的,想想slide动画的瞬间,在一两秒内,浏览器要完成dom加载、Enhancements、DOM节点的position位置属性渐变,这些都不是省油的灯,不卡才怪。
前端模版是用来承载数据的,不是用来Enhancements的。
附:毕设想到的一个小细节