2009.1105
动态加载JavaScript的小实践

动态加载JavaScript文件和CSS资源为Web前端开发提供了巨大的灵活性,同时也实现了lazy load和按需加载,相比XMLHttpRequest而言其没有跨域的限制使其广泛应用。其基本原理是:在页面DOMReady后,利用JavaScript把指定文件路径的script和link元素插入到页面中,然后判断其加载状态再进行继续操作。

阅读全文 »

标签:, ,
在0:56发表于Javascript & DOM & AJAX,有评论26
2009.0402
《JavaScript语言精粹》

本书的作者Douglas Crockford是JavaScript开发社区最知名的权威,JavaScript的发明人Brendan Eich说他是“Yoda of lambda programming and JavaScript(lambda编程和JavaScript的精神领袖)”。他不仅仅给我们带来了JSON、JSLint、JSMin和ADSafe等等在JavaScript开发领域应用广泛且影响深远的作品,更重要的是给我们带来了受益终身的利用JavaScript进行高效开发的思想和风格,这就是本书的重要意义。

JavaScript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,至少还说明它是一个不错的语言。Douglas Crockford在这本书中剥除JavaScript糟糕的外衣,抽离出一个具有更好可靠性、可读性和可维护性的JavaScript子集,让你看到一门优雅的、轻量级的和非常富有表现力的语言。他从语法、对象、函数、继承、数组、正则表达式、方法、样式和优美的特性这9个方面来呈现这门语言真正的精华,这是语言最本质最优雅的部分,通过它们完全可以构建出高效的代码。他还通过附录列出了这门语言的糟粕和鸡肋部分,且告诉你如何避免它们。最后还介绍了JSLint,通过它的检验,能有效的保障我们写出优美高效的代码。

阅读全文 »

标签:, ,
在23:45发表于Javascript & DOM & AJAX,有评论27
2009.0329
JavaScript大牛:Douglas Crockford

Douglas Crockford是JavaScript开发社区最知名的权威,是JSONJSLintJSMinADSafe之父,是《JavaScript:The Good Parts》(英文版中文版)的作者。JavaScript的发明人Brendan Eich说他是“Yoda of lambda programming and JavaScript(lambda编程和JavaScript的精神领袖)”。他同时也服务于ECMA的JavaScript2.0技术委员会(TC39)。其个人站点和Blog是http://www.crockford.com/http://profiles.yahoo.com/blog/GSBHPXZFNRM2QRAP3PXNGFMFVU

Douglas Crockford现在是Yahoo的资深JavaScript架构师,曾在Atari公司(视频游戏工业的领袖)开发了办公自动化系统,同时也完成了对于游戏和音乐的研究;曾任Lucasfilm(卢卡斯)电影公司技术总监;在Paramount(派拉蒙)公司任职过新媒体执行主管;在电气社区,通常为人所知的是communities.com的创始人兼首席执行官;他还创办了State软件公司并作为该公司CTO,这也是他发现JSON时所在的地方。他同时也对Blissymbolics非常感兴趣,这是一种图形、象征性的语言,并且对永久减肥(Permanent Weight Loss)做过研究。

阅读全文 »

标签:, ,
在22:07发表于Javascript & DOM & AJAX, 互联网 & IT,有评论40
2008.1027
JavaScript的陷阱

这本来是翻译Estelle Weyl的《15 JavaScript Gotchas》,里面介绍的都是在JavaScript编程实践中平时容易出错或需要注意的地方,并提供避开这些陷阱的方法,总体上讲,就是在认清事物本质的基础样要坚持好的编程习惯,其实这就是Douglas Crockford很久以前提出的JavaScript风格要素问题了,有些内容直接是相同的,具体请看《Javascript风格要素(1)》《Javascript风格要素(2)》。在翻译的过程中,我又看到了贤安去年翻译的《JavaScript的9个陷阱及评点》,其内容又有些交叉在一起,所以我就在现有翻译的基础上做了一个简单的拼合,并依据自己的理解增加了一些注释和解释。 阅读全文 »

标签:, , , , , , , ,
在0:26发表于Javascript & DOM & AJAX,有评论18
2008.0507
Javascript的匿名函数

一、什么是匿名函数?

在Javascript定义一个函数一般有如下三种方式:

  1. 函数关键字(function)语句
    function fnMethodName(x){alert(x);}
  2. 函数字面量(Function Literals)
    var fnMethodName = function(x){alert(x);}
  3. Function()构造函数
    var fnMethodName = new Function('x','alert(x);')

上面三种方法定义了同一个方法函数fnMethodName,第1种就是最常用的方法,后两种都是把一个函数复制给变量fnMethodName,而这个函数是没有名字的,即匿名函数。实际上,相当多的语言都有匿名函数阅读全文 »

标签:, ,
在1:14发表于Javascript & DOM & AJAX,有评论41
2008.0130
Javascript风格要素(2)

我们使用习惯用法可以使我们的意图更加的清晰和简洁。

使用==时,当心强制转换

考虑下面函数:

function gw(f) {
 if (d.w.sv.checked == true) {
  zv = 'on';
 } else {
  zv = 'off';
 }
 procframe.location.replace("http://b.www.yahoo.com/module/wtr_tr.php?p=" +
 escape(f.p.value) + "&sv=" + zv);
 return false;
}

阅读全文 »

标签:,
在19:28发表于Javascript & DOM & AJAX,有评论9
2008.0126
Javascript风格要素(1)

程序设计是困难的,其核心是管理的复杂性。计算机程序是人类做出的最复杂的东西。质量是不可靠的且隐蔽的。

好的体系架构是必需给程序足够的结构使其健壮而不会陷入混乱的泥淖,但我们表达一个程序细节的方式是同等重要的。一个程序的本质会被不良的编码所隐藏。只有当一个程序的表达清晰时,我们才能有希望正确的推理出它的效率、安全和正确性。

William Strunk的《风格要素》(The Elements of Style)是关于文学风格的经典著作,它是一本关于英文写作的薄手册,在用法、组织和形式上提出忠告。风格的理念应用于编程,在1972年Kreitzberg和Shneiderman的《FORTRAN风格要素》(The Elements of FORTRAN Style)中是不成功的,但在1978年的Kernighan和Plauger的《编程风格要素》(The Elements of Programming Style)中是非常成功的: 阅读全文 »

标签:,
在17:03发表于Javascript & DOM & AJAX,有评论31
2007.1204
Javascript的一种模块模式

全局变量是魔鬼。在YUI中,我们仅用两个全局变量:YAHOO和YAHOO_config。YUI的一切都是使用YAHOO对象级的成员或这个成员作用域内的变量。我们建议在你的应用程序也使用类似的规则。

Douglas Crockford已经传授了一个有用的单例模式(singleton pattern)实现此规则,我认为他的模式有益于你基于YUI的那些应用。Douglas叫它模块模式(module pattern)。它是如下工作的: 阅读全文 »

标签:, , ,
在0:49发表于Javascript & DOM & AJAX,有评论21
2007.0430
dwnTree:可记忆的无限级树型菜单 1.1

简介

dwnTree是一个可记忆的无限级树型菜单,它的特点如下:

  1. 菜单数据采用XML格式,依据XML文档树结构生成树型菜单,可在XML文档中设置子菜单在加载时是否展开和菜单链接的target方式
  2. 可启用记录菜单的打开状态(需要Cookie的支持),记住用户最后的菜单操作状态
  3. 支持WEB标准,考虑语义化,支持IE5.5+,Firefox,Opera
  4. 使用简单,同一页面无限次使用

阅读全文 »

标签:, , , ,
在19:00发表于Javascript & DOM & AJAX,有评论61
2007.0416
检测大写锁定键(Caps Lock)是否被激活

相信很多人都有过这样的经历,在输入密码时不小心按了大写锁定键(Caps Lock),导致密码验证屡次错误,甚至一度绝望中。虽然常见的标准键盘有Caps Lock的指示灯来提示,还用IBM的船型Caps Lock键专利(谢谢WINDCY)通过减少表面积和高度来减少输入时误按下以提高效率,但由于该键容易在无察觉下被按下,且功能可以被Shift 键代替,所以有人提出了“撬出Caps Lock键”。 阅读全文 »

标签:, , ,
在19:09发表于Javascript & DOM & AJAX,有评论16

回到页眉