解构JavaScript库:jQuery、Prototype、Mootools
2011年01月6日 Web开发, 编程技术
通过将 JavaScript 源代码以可见块元素的方式标记出来,可以更方便查找和学习。点开每个块元素,即可查看相应的代码。点击代码中的链接,即可在程序流中纵情畅游。
这么好的东西,还用多说吗?你懂的。(见下图)
唯一需要说明的是,Dave Stewart原创的这个JavaScript库解构系列不知何故被挡在“墙”外头了,我只是把它搬到了“墙”里面来而已。换句话说,这个解构系列并非出自我手,我只是在自己的站点上提供了它的一个镜像,以方便“墙”内的JavaScript学习者参考。
现在就开始:解构JavaScript库!

Jeremy Keith在 Fronteers 2010 上的主题演讲
今天我想跟大家谈一谈HTML5的设计。主要分两个方面:一方面,当然了,就是HTML5。我可以站在这儿只讲HTML5,但我并不打算这样做,因为如果你想了解HTML5的话,你可以Google,可以看书,甚至可以看规范。
实际上,确实有人会谈到规范的内容。史蒂夫·福克纳(Steve Faulkner)会讲HTML5与可访问性。而保罗·艾里什(Paul Irish)则会讲HTML5提供的各种API。因此,我今天站在这里,不会光讲一讲HTML5就算完事了。
说老实话,在正式开始之前,我想先交待清楚我所说的HTML5到底是什么意思。这话听起来有点搞笑:这会子你一直在说HTML5,难道我们还不知道什么是HTML5吗?大家知道,有一个规范,它的名字叫HTML5。我所说的HTML5,指的就是这个规范。但问题是,有些人所说的HTML5,指的不仅仅是这个规范,还有别的意思。比如说,用HTML5来代指CSS3就是一种常见的叫法。我可不是这样的。我所说的HTML5,不包含CSS3,就是HTML5。
类似的术语问题以前也有过。Ajax本来是一种含义明确的技术,但过了不久,它的含义就变成了“用JavaScript来做一切好玩的东西”。这就是Ajax,对不对?今天,HTML5也面临同样的问题,它本来指的是一个特定的规范,但如今含义却成了“在Web上做一切好玩的事。”我说的不是这种HTML5,不是这种涵盖了最近刚刚出现的各种新东东的HTML5。我说的仅仅是规范本身:HTML5。
刚才已经说了,我今天想要讲的内容不多,也没有打算介绍HTML5都包含什么。今天我要讲的是它的另一方面,即HTML5的设计。换句话说,我要讲的不是规范里都包含什么,而是规范里为什么会包含它们,以及在设计这个规范的时候,设计者们是怎么看待这些东西的。
设计原理
设计原理本质上是一种信念、一种想法、一个概念,是你行动的支柱。不管你是制定规范,还是制造一种有形的物品,或者编写软件,甚至发明编程语言。你都能找到背后的一个或者多个设计原理,多人协作的任何成果都是例证。不仅仅Web开发领域是这样。纵观人类历史,像国家和社会这样大规模的构建活动背后,同样也有设计原理。
就拿美国为例吧,美国的设计原理都写在了《独立宣言》中了。
我们认为这些真理是不言而喻的,人人生而平等,造物主赋予了每个人不可剥夺的权利,包括生存、自由和追求幸福。
这里有一句口号:生存、自由和追求幸福。这是被写进宪法中的核心理念,它关系到我们所有人的一切,也就是我们构建自己社会的原则。
查看全文 »
从HTML 2.0到HTML5
2010年09月22日 Web开发, 好书, 翻译
原文链接:A Brief History of Markup
2010年9月23日校毕
HTML5是这门通用语言的最新版。虽然这次升级的变化之大史无前例,但HTML更新换代已经不是第一次了。这门语言从诞生之日起一直在发展。
在发明Web的同时,Tim Berners-Lee先生创造了HTML(HyperText Markup Language,超文本标记语言)。1991年,他写了一篇名为“HTML Tags”的文档(另见更早的www-talk上的记录),其中建议人们使用20来个元素编写网页。
说到用尖括号包围文本的标签,并不是Tim先生的首创。更早的SGML(Standard Generalized Markup Language,标准通用标记语言)中就开始使用这种标签了。Tim先生当时并没有发明新语言,而是着眼于利用已经存在的技术——在HTML5的发展过程中,这个倾向依然得到了体现。
从IETF到W3C:HTML 4诞生记
HTML 1?这个版本实际上是不存在的。最早的HTML官方规范,是由IETF(Internet Engineering Task Force,因特网工程任务组)发布的HTML 2.0。这一规范中的许多特性,都是在已有实现的基础上归纳总结出来的。比如说,1994年居于市场领导地位的Mosaic浏览器提供了一个<img>标签,作者可以通过它在自己的文档中嵌入图像。后来,img元素就出现在了HTML 2.0中。
W3C(World Wide Web Consortium,万维网联盟)继IETF之后成为HTML后续标准的制定者,其官方网站是http://www.w3.org。20世纪90年代中期以后,W3C对HTML进行了几次升级,直至1999年发布HTML 4.01。
此时,HTML的发展走到了一个十字路口上。
查看全文 »
在Windows平台的Apache中配置Python
2010年08月19日 Web开发, 编程技术
要在Windows平台的Apache中使用Python,当然必须得先安装Apache和Python。Apache我使用的是XAMPP,而Python则随便一搜,就可以找到下载链接。由于这个解决方案要通过安装Apache模块mod_python来实现,而mod_python的当前版本3.3.1只支持Apache 2.2和Python 2.5,所以不得不先缷载已经装好的Python 3.0,重新下载安装了Python 2.5。mod_python是一个Apache模块,它可以将Python解释器嵌入到Apache服务器中(详情可以看这里)。
让Apache支持Python的过程很简单,只要3步。
- 下载mod_python模块安装程序(注意文件名后面Python和Apache的版本号要与自己已经安装的版本一致;文件名前面的版本号则是mod_python的,文件名示例:mod_python-3.3.1.win32-py2.5-Apache2.2.exe),然后安装,安装向导会自动找到Python路径,但可能需要我们手工指定Apache路径,安装到最后,向导还会提示你如何修改Apache配置文件(参见下一步)并给出了后续步骤的英文说明。
- 让Apache加载mod_python模块。在Apache安装目录下找到其配置文件apache\conf\httpd.conf,打开,搜“LoadModule”,找到加载模块的地方,然后添加一条语句:LoadModule python_module modules/mod_python.so,重新启动Apache。
- 在htdocs目录下新建一个目录,如:“py”。进入py目录,新建一个文本文件,并命名为“.htaccess”,加入下列3条指令:
AddHandler mod_python .py PythonHandler mptest PythonDebug On
这里第一条指令是将所有URL末尾为.py的请求转发给mod_python处理程序,mod_python接收到请求之后再寻找适当的PythonHandler处理程序。第二条指令只定义了一个mptest处理程序。最后一条是启用Python代码调试功能,以便在代码运行出错时输出Python解释器返回的错误。
完成以上3步之后,就可以编写Python文件并进行测试了。在py目录下新建 mptest.py 文件,打开后添加如下代码:
from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK
保存。打开浏览器,输入http://localhost/py/mptest.py,回车。看到“Hello World!”了吗?
实际上,由于前面只明确将mptest设置为处理程序,所以无论浏览器URL中的.py文件名是什么(如:login.py、default.py),都将被转发给mptest.py文件来处理,都会返回“Hello World!”。怎么办呢?长话短说,可以将上面第3步中的代码替换成如下所示:
AddHandler mod_python .py PythonHandler mod_python.publisher PythonDebug On
《JavaScript高级程序设计(第2版)》快出版了
2010年06月24日 Web开发, 好书, 翻译
John Resig谈改进Web应用的高级JavaScript技术[待续]
2010年04月9日 Web开发, 翻译
Tags: JavaScript, John Resig, jQuery




为之漫笔(李松峰),本博客专注于Web前后端技术、移动平台开发技术、交互设计和技术翻译。声明一下,因为时常需要外出审稿,而且基本不带笔记本,所以有时可能会迟一点回复大家的留言。