当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 前淘宝前端开发工程师阿当的PPT中有JS技术理念问题

Javascript
JavaScript 序列化对象实现代码
替代window.event.srcElement效果的可兼容性的函数
div+css+js模拟tab切换效果 事件绑定 IE,firefox兼容
IE和Firefox下event事件杂谈
javascript option onclick事件ie解决方案 兼容ie,firefox
javascript demo 基本技巧
用js实现层随着内容大小动态渐变改变 推荐
JS 的应用开发初探(mootools)
JS 在数组插入字符的实现代码(可参考JavaScript splice() 方法)
JQuery Tips(4) 一些关于提高JQuery性能的Tips
jQuery 淡入淡出、展开收缩菜单实现代码
js控制div及网页相关属性的代码
javascript 翻页测试页(动态创建标签并自动翻页)
Js获取table当前tr行的值的代码
IE 上下滚动展示模仿Marquee机制
jQuery解决iframe高度自适应代码
jQuery 连续列表实现代码
利用jQuery的$.event.fix函数统一浏览器event事件处理
Javascript和Ajax中文乱码吐血版解决方案
js Firefox 加入收藏夹功能代码 兼容Firefox 和 IE

Javascript 中的 前淘宝前端开发工程师阿当的PPT中有JS技术理念问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-20   浏览: 281 ::
收藏到网摘: n/a

第一届 web rebuild 北京会有个前淘宝前端开发工程师阿当分享的 PPT 在公司团队内部有同事下载的分享,然后看了。发现了有些技术理念的问题: 第7个PPT的代码是用 JS 去设置 CSS,这与“不同浏览器解析DOM不同”没有任何关系,是CSS的兼容性!而且用JS去直接设样式是技术理念上的一个错误!
第9个PPT的代码是用DOM脚本编程,而不是用兼容性更好的表单 name 去取表单中的对象。好像没有 DOM 脚本编程就无法活了,不要什么都 XXX.getElementByXXX 方法。
第10个PPT的代码是用:
if(document.all){}else{}
而代码明明是addEventListener()方法,那为什么不这么写:
if(XXX.addEventListener){}else{}
理由请见army的译文《特性检测并非浏览器检测》。
呃,document.all(IE) 和 document.layer(NN) 一样是挺古的写法,我只在项目遗留的代码中见过一些踪迹,像阿当这样大量的使用真是头回见。
第19个PPT的代码是用匿名函数形成的JS闭包来产生临时的命名空间,这种方式本人通过与同行的沟通,发现只能在库的核心文件中用一次(见jQuery源码)。像他这样在页面中用了超过一次以上就可能是误用了。从他的代码中看,a 已经有了A与B的区别,就不会冲突了。
第25个PPT的代码中 set 方法 、read 方法取名得不成对,set 与 get 成对,read 与 write 成对。
ppt打包下载