摘要: 浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。将讨论的浏览器今天,有五种主流浏览器——IE、Firefox、Safari、Chrome及Opera。本文将基于一些开源浏览器的例子——Firefox、 Chrome及Safari,Safari是部分开源的。根据W3C(World Wide Web Consortium 万维网联盟)的浏览器统计数据,当前(2011年5月),Firefox、Safari及Chrome的市场占有率综合已接近60%。(原文为2009年10月,数据没有太大变化)因 阅读全文
posted @ 2013-04-11 15:52 瓦尔登湖的秋天 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 命令模式是一种封装方法调用的方式,它用来对方法进行参数化处理和传送,经这样处理方法可以在任何需要的时候执行。适用于两种情况,一是消除调用操作的对象和实现操作的对象之间的耦合,二是在创建用户界面方面,特别是需要不受限的取消操作的时候。缺点在于增加复杂度,难以调试,所以一般不要强用。1.简单命令对象一般用来消除接收者和调用者的耦合var SimpleCommand = function(receiver) { // implements Command this.receiver = receiver;};SimpleCommand.prototype.execute = function() . 阅读全文
posted @ 2013-02-25 15:50 瓦尔登湖的秋天 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1.传统模式validator = { validate: function (value, type) { switch (type) { case 'isNonEmpty ': { return true; // NonEmpty 验证结果 } case 'isNumber ': ... 阅读全文
posted @ 2013-02-25 13:52 瓦尔登湖的秋天 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 1.function Publisher() { this.subscribers = [];}Publisher.prototype.deliver = function(data) { this.subscribers.forEach( function(fn) { fn(data); } ); return this;};Function.prototype.subscribe = function(publisher) { var that = this; var alreadyExists = publisher.subscribers.some( ... 阅读全文
posted @ 2013-02-22 11:30 瓦尔登湖的秋天 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 1.本体var Publication = new Interface('Publication', ['getIsbn', 'setIsbn', 'getTitle', 'setTitle', 'getAuthor', 'setAuthor', 'display']);var Book = function(isbn, title, author) { ... } // implements Publication/* Library interface. */va 阅读全文
posted @ 2013-02-22 11:04 瓦尔登湖的秋天 阅读(163) 评论(0) 推荐(0) 编辑
摘要: DED.util.Event = { getEvent: function(e) { return e || window.event; }, getTarget: function(e) { return e.target || e.srcElement; }, stopPropagation: function(e) { if (e.stopPropagation) { e.stopPropagation(); } else { e.cancelBubble = true; } }, preventDefault: f... 阅读全文
posted @ 2013-02-22 10:45 瓦尔登湖的秋天 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 1.//需要装饰的类(函数)function Macbook() { this.cost = function () { return 1000; };}function Memory(macbook) { this.cost = function () { return macbook.cost() + 75; };}function BlurayDrive(macbook) { this.cost = function () { return macbook.cost() + 300; };}function I... 阅读全文
posted @ 2013-02-21 17:02 瓦尔登湖的秋天 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 1.简单工厂/* BicycleShop class. */var BicycleShop = function() {};BicycleShop.prototype = { sellBicycle: function(model) { var bicycle; switch(model) { case 'The Speedster': bicycle = new Speedster(); break; case 'The Lowrider': bicycle = new Lowrider(); ... 阅读全文
posted @ 2013-02-21 15:57 瓦尔登湖的秋天 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 1.var Singleton = (function () { var instantiated; function init() { /*这里定义单例代码*/ return { publicMethod: function () { console.log('hello world'); }, publicProperty: 'test' }; } return { getInstance: function () ... 阅读全文
posted @ 2013-02-21 14:33 瓦尔登湖的秋天 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 近期参加小组周会,其中一个环节是营销设计组的作品点评,虽然自己有很长一段时间没有设计这类需求,但一直在关注,平时不定期的收藏了一些图片和网页,拿出来与大家分享,并且从几个方面来谈谈怎样的设计能给人留下深刻印象。什么是设计?关于“设计”的含义有着许多种解释,每个人对设计都有自己的理解和体会,甚至具体到一个点,一个色块。百度说,设计是一种计划、规划、设想通过视觉的形式传达出来的活动过程。也有人说设计是把自己的想法直接呈现出来的手段。甚至还有人说…总之,我认为无论设计是以何种形态出现,目的都为了更好地传递背后的信息,给用户留下深刻的视觉印象。要想给人留下深刻印象最好的办法就是视觉冲击力,运用视觉艺术 阅读全文
posted @ 2012-11-21 10:22 瓦尔登湖的秋天 阅读(169) 评论(0) 推荐(0) 编辑