Spiga

随笔分类 -AJAX

能承载移动 Web 应用的唯一浏览器: Mobile Safari

2010-01-30 14:02 by Cat Chen, 1831 visits, 网摘, 收藏, 编辑
摘要:最近拿 iPhone 、 Android 、 Windows Mobile 这三个平台上的内置浏览器来做了一番对比,结果是只有 iPhone 的 Mobile Safari 能够承载现代化的移动 Web 应用,其他移动浏览器的设计思路还停留在上个世纪──能看网页就行,不存在移动应用一说。我用来做对比的平台是 iPhone 2.0 、 Android 2.0 、 Window... 阅读全文

我在 TechEd 2009 演讲的资源 (Silverlight & Ajax)

2009-11-10 11:49 by Cat Chen, 2866 visits, 网摘, 收藏, 编辑
摘要:这是TechEd第二天下午的Silverlight课程资源。关于百度Hi的Silverlight实现方面的任何问题,都欢迎与我讨论。基于Silverlight的RIA架构及百度应用View more presentations from Cat Chen.这是TechEd第三天下午ASP.NET 4课程资源。与ASP.NET AJAX 4.0相关的问题可以在此讨论。建站大业,实战ASP.NET 4... 阅读全文

十分钟内学会:控制浏览器是否缓存网页状态

2009-10-09 14:59 by Cat Chen, 4262 visits, 网摘, 收藏, 编辑
摘要:Question在Firefox等浏览器中,如果你打开一个页面并进行若干操作,例如在文本框进行输入,甚至点击按钮进行Ajax操作更新页面局部,这些操作的结果都会被缓存下来。在你点击链接离开这个页面后,如果你通过后退按钮回到这个页面,你会发现它仍出于你离开时的状态,而非页面刚刚加载好后的初始状态。在一些情况下,这样的缓存方式是符合我们预期的;但在另外一些情况下,我们更希望页面恢复到初始状态,或者说让... 阅读全文

jQuery is DSL (Part 2 - jQuery)

2009-08-17 00:01 by Cat Chen, 2900 visits, 网摘, 收藏, 编辑
摘要:jQuery的Internal DSL形式在上一篇文章里面,我们了解到了Internal DSL的具体形式,形如:/* Method Chaining */computer() .processor() .cores(2) .i386() .disk() .size(150) .disk() .size(75) .speed(7200) .sata() .end();然后我们在看看一段... 阅读全文

jQuery is DSL (Part 1 - DSL)

2009-08-10 23:47 by Cat Chen, 4408 visits, 网摘, 收藏, 编辑
摘要:jQuery刚刚出来的时候,我没有太多关注它,觉得这不过是Yet Another JavaScript Library。早期的jQuery专注于DOM节点的筛选与操作,不提供众多的基础类扩展,更不提供UI组件,因此体积能够做到很小。然而,我实在看不出它和我熟悉的Prototype比有什么明显的优势——jQuery能做的各项独立的操作,Prototype都能做。后来用jQue... 阅读全文

让 JavaScript 轻松支持函数重载 (Part 2 - 实现)

2009-07-02 15:51 by Cat Chen, 3214 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章里,我们设计了一套能在JavaScript中描述函数重载的方法,这套方法依赖于一个叫做Overload的静态类,现在我们就来看看如何实现这个静态类。识别文本签名我们先来回顾一下上一篇文章中提到的Overload用例: var extend = Overload .add("*, ...", function(target) { }) .add("Boolean, *, ...", ... 阅读全文

让 JavaScript 轻松支持函数重载 (Part 1 - 设计)

2009-07-02 09:18 by Cat Chen, 3582 visits, 网摘, 收藏, 编辑
摘要:JavaScript支持重载吗?JavaScript支持函数重载吗?可以说不支持,也可以说支持。说不支持,是因为JavaScript不能好像其它原生支持函数重载的语言一样,直接写多个同名函数,让编译器来判断某个调用对应的是哪一个重载。说支持,是因为JavaScript函数对参数列表不作任何限制,可以在函数内部模拟对函数重载的支持。实际上,在很多著名的开源库当中,我们都可以看到函数内部模拟重载支持的... 阅读全文

写个 JavaScript 异步调用框架 (Part 6 - 实例 & 模式)

2009-07-01 21:59 by Cat Chen, 2974 visits, 网摘, 收藏, 编辑
摘要:我们用了5篇文章来讨论如何编写一个JavaScript异步调用框架(问题 & 场景、用例设计、代码实现、链式调用、链式实现),现在是时候让我们看一下在各种常见开发情景中如何使用它了。封装Ajax设计Async.Operation的最初目的就是解决Ajax调用需要传递callback参数的问题,为此我们先把Ajax请求封装为Async.Operation。我在这里使用的是jQuery,当然无... 阅读全文

写个 JavaScript 异步调用框架 (Part 5 - 链式实现)

2009-06-30 23:36 by Cat Chen, 3054 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章里面,我们为异步调用框架设计了一种链式调用方式,来增强异步调用队列的代码可读性,现在我们就来编写实现这部分功能的代码。调用入口链式调用存在Async.go方法和Async.chain方法两个入口,这两个入口本质上是一致的,只是Async.chain方法在调用时先不提供初始参数,而Async.go方法在调用时提供了初始参数并启动异步调用链。Async.chain = function()... 阅读全文

写个 JavaScript 异步调用框架 (Part 4 - 链式调用)

2009-05-09 23:46 by Cat Chen, 2431 visits, 网摘, 收藏, 编辑
摘要:我们已经实现了一个简单的异步调用框架,然而还有一些美中不足,那就是顺序执行的异步函数需要用嵌套的方式来声明。现实开发中,要按顺序执行一系列的同步异步操作又是很常见的。还是用百度Hi网页版中的例子,我们先要异步获取联系人列表,然后再异步获取每一个联系人的具体信息,而且后者是分页获取的,每次请求发送10个联系人的名称然后取回对应的具体信息。这就是多个需要顺序执行的异步请求。为此,我们需要设计一种新的操... 阅读全文

写个 JavaScript 异步调用框架 (Part 3 - 代码实现)

2009-05-07 14:54 by Cat Chen, 2678 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章里,我们说到了要实现一个Async.Operation类,通过addCallback方法传递回调函数,并且通过yield方法返回回调结果。现在我们就来实现这个类吧。类结构首先我们来搭一个架子,把需要用到的似有变量都列出来。我们需要一个数组,来保存回调函数列表;需要一个标志位,来表示异步操作是否已完成;还可以学IAsyncResult,加一个state,允许异步操作的实现者对外暴露自定义... 阅读全文

写个 JavaScript 异步调用框架 (Part 2 - 用例设计)

2009-05-07 01:12 by Cat Chen, 2894 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章里说到,我们要设计一个异步调用框架,最好能够统一同步异步调用的接口,同时具体调用顺序与实现方式无关。那么我们现在就来设计这样一个框架的用例。传递回调我们首先要考虑的一个问题是,如何传递回调入口。在最传统的XHR调用当中,回调函数会被作为最后一个参数传递给异步函数:function asyncOperation(argument, callback)在参数相当多的时候,我们可以把参数放到... 阅读全文

写个 JavaScript 异步调用框架 (Part 1 - 问题 & 场景)

2009-05-06 00:18 by Cat Chen, 3552 visits, 网摘, 收藏, 编辑
摘要:问题在Ajax应用中,调用XMLHttpRequest是很常见的情况。特别是以客户端为中心的Ajax应用,各种需要从服务器端获取数据的操作都通过XHR异步调用完成。然而在单线程的JavaScript编程中,XHR异步调用的代码风格实在是与一般的JavaScript代码格格不入。额外参数考虑一个除法函数,如果它是纯客户端的同步函数,那么签名会是这样的:function divide(operand1... 阅读全文

ASP.NET AJAX 4.0 Preview 3 (Part 2 - ASP.NET AJAX Template)

2009-03-14 10:43 by Cat Chen, 3785 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章里,我们说到了如何使用ADO.NET Data Service Client Library能够轻松访问到存在服务器端的数据,然而将数据展现出来仍需要人手拼接HTML这点就实在是让人难以接受,所以我们现在就来看看如何利用ASP.NET AJAX Template解决这个问题。文章中所用到的示例代码,可以在这里下载:ASP.NET AJAX 4.0 Preview 3 Demo,然后参考... 阅读全文

ASP.NET AJAX 4.0 Preview 3 (Part 1 - ADO.NET Data Service Client Library)

2009-03-11 00:18 by Cat Chen, 3356 visits, 网摘, 收藏, 编辑
摘要:自从Microsoft与jQuery合作以来,ASP.NET AJAX与jQuery就被定位为两个互补的AJAX库。既然jQuery已经实现了如此多轻量级的AJAX特性,自然ASP.NET AJAX会继续专注于富客户端所需的一些重量级特性。 在ASP.NET AJAX 4.0 Preview 3里面,开发人员能够接触到的两个重要的新特性就是ADO.NET Data Service Client L... 阅读全文

以服务器端为中心的 ASP.NET AJAX 模式 (Part 2 - Control)

2008-10-30 00:50 by Cat Chen, 4260 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章当中,也就是《以服务器端为中心的 ASP.NET AJAX 模式 (Part 1 - Behavior)》,我们探讨了较为易用的Behavior模式。之所以说它较为易用,是因为它不涉及和原有Page处理流程的交互,即使访问网络也是访问独立的Web Service(包括Page上的[WebMethod]),因此和Page处理流程的设计绝对是正交的。但有时候我们需要的就是与Page处理流程... 阅读全文

以服务器端为中心的 ASP.NET AJAX 模式 (Part 1 - Behavior)

2008-10-26 20:33 by Cat Chen, 3965 visits, 网摘, 收藏, 编辑
摘要:早在ASP.NET AJAX从CTP转向Beta再转向RTM时,看着客户端的Control被逐步放弃,与此同时ASP.NET AJAX Control Toolkit越来越多地使用Behavior,我就想深入说说ASP.NET AJAX的模式。不过由于我比较懒,所以这个话题只在《理想的 ASP.NET AJAX (Part 2 - Server Centric)》中一笔带过,没有深入讨论。今天看到... 阅读全文

如何动态加载 JavaScript 与 CSS

2008-09-02 23:01 by Cat Chen, 6597 visits, 网摘, 收藏, 编辑
摘要:Omar AL Zabir这位MVP总是喜欢搞些稀奇古怪同时又很实用的小东西,并且还十分值得参考。最近他就做了一个叫做ensure的小工具用于动态加载JavaScript、CSS与HTML,而且IE、Firefox、Opera、Safari都支持了,那么我们就来看看ensure是如何做到动态加载JavaScript与CSS的。在介绍ensure内部的实现之前,让我们先来看看其功能:ensure({... 阅读全文

使用 .NET 实现 Ajax 长连接 (Part 2 - Mutex Wait & Signal)

2008-03-08 17:21 by Cat Chen, 5745 visits, 网摘, 收藏, 编辑
摘要:在上一次的文章中,我们说到了如何设计一个ASP.NET Web Service来处理长连接请求。很多人对此就提出了问题,如何hold住请求让它30秒不断开了?这其实很简单,只需要Sleep()一下就可以了:Thread.Sleep(30 * 1000);然而问题是,我们不是要等30秒然后看看是否有事件需要返回,而是在这30秒内随时有事件随时返回。因此,我们需要一套机制来在等待的过程中检查是否有事件... 阅读全文

使用 .NET 实现 Ajax 长连接 (Part 1 - Comet Web Service)

2008-02-26 17:49 by Cat Chen, 7497 visits, 网摘, 收藏, 编辑
摘要:Ajax的长连接,或者有些人所说的Comet,就是指以XMLHttpRequest的方式连接服务器,连接后服务器并非即时写入相应并返回。服务器会保持连接并等待一个需要通知客户端的事件,该事件发生后马上将数据写入响应,这时候客户端就以相当“实时”的方式接收到事件通知。具体的通信模型,请参考这篇文章:《Comet:基于 HTTP 长连接的“服务器推”技术... 阅读全文

编写 iPhone Friendly 的 Web 应用程序 (Part 6 - iUI)

2008-01-07 21:01 by Cat Chen, 3883 visits, 网摘, 收藏, 编辑
摘要:iUI是一个针对iPhone Safari的Web开发框架,由Joe Hewitt开发。这位Joe Hewitt曾经参与过Firefox的开发,包括其中的DOM Inspector以及Firebug,后来到了Facebook,为Facebook开发了iPhone专用版本,对iPhone Web开发社区算是作出了巨大贡献。样式我们继续说iUI这个框架。这个框架所做的事情,就是提供iPhone Fri... 阅读全文

讲座资源:ASP.NET AJAX 体验

2007-08-21 16:49 by Cat Chen, 1972 visits, 网摘, 收藏, 编辑
摘要:这是2007年8月18日广州.NET俱乐部活动中ASP.NET AJAX体验这一部分的讲座资源,其中包括了pptx文件以及所有的sample。sample中包括8个UpdatePanel sample、4个UpdateProgress sample、1个Timer sample、2个ScriptManager sample以及1个client script sample。ASP.NET AJAX ... 阅读全文

理想的 ASP.NET AJAX (Part 2 - Server Centric)

2007-07-31 23:32 by Cat Chen, 3854 visits, 网摘, 收藏, 编辑
摘要:使用ASP.NET的话……ASP.NET的最大优势就是组件化,在UI上更明确地说就是控件化,但这却为AJAX带来了不少问题。首要问题是输出HTML不由我们控制。复杂的GridView不说,我们就来看简单的CheckBox,在你不对它设置任何样式属性和文本时,它是一个单纯的<input />,加上文本的话文本会被放在<label />中以便点击文本与点... 阅读全文

理想的 ASP.NET AJAX (Part 1 - Client Centric)

2007-07-30 22:42 by Cat Chen, 4630 visits, 网摘, 收藏, 编辑
摘要:怎样的AJAX才算是理想? 要说什么是理想的ASP.NET AJAX,就要先说说什么是理想的AJAX。事实上AJAX最不理想的地方在于search engine friendly以及bookmarkable,这两个问题有一定的相似性,要解决并不难,只是每一个系统中实现起来都不一样,因此难以提出一个统一的patterns来解决。 首先说说search engine friendly这一点吧,实际上使... 阅读全文

探索 ASP.NET Futures (Part 3 - Client Diagnostics)

2007-06-12 15:57 by Cat Chen, 3731 visits, 网摘, 收藏, 编辑
摘要:貌似ASP.NET 2.0新增的诊断相关服务没多少人关注,更没多少人用,不过对于正在使用此类服务分析站点的人来说,肯定非常期望ASP.NET AJAX中的客户端代码错误也能记录到诊断日志中,这样就能获取更丰富的数据来分析站点不稳定因素的来源。ASP.NET Futures中已经引入了客户端诊断服务,在解释此服务之前不妨先思考一下假如你要自己写一个客户端诊断服务会怎么做。如果我来写一个客户端诊断服务... 阅读全文

英语阅读推荐:在AJAX中制作自定义验证服务 & 优秀网站的5个因素

2007-03-16 20:08 by Cat Chen, 5022 visits, 网摘, 收藏, 编辑
摘要:新一期的Random Clippings又来了,这次介绍的两篇文章都很容易读,单词不会太难,语法也简单。在AJAX中制作自定义验证服务 (Building a custom authentication service in AJAX)在这篇文章中我们将学会如何制作一个自定义的验证服务,用于ASP.NET AJAX。为什么需要制作自定义的验证服务呢,ASP.NET AJAX不是内置一个了吗?因为那... 阅读全文

英语阅读推荐:使用AJAX+WF+LINQ制作Google IG式首页

2007-01-16 01:28 by Cat Chen, 7599 visits, 网摘, 收藏, 编辑
摘要:如果你既想学习ASP.NET AJAX,又想学习Windows Workflow Foundation,还想学习LINQ(包括DLinq和XLinq),能够一次过满足你三个愿望的除了Kinder出奇蛋就是本期Random Clipping重点推荐的这篇文章了。Build Google IG like Ajax Start Page in 7 days using ASP.NET Ajax and ... 阅读全文

英语阅读推荐:基于AJAX的ASP.NET聊天室 & 如何建立共识

2007-01-03 22:41 by Cat Chen, 8586 visits, 网摘, 收藏, 编辑
摘要: 基于AJAX的ASP.NET聊天室 (Building an AJAX based chat room in ASP.NET)这是一篇从技术角度来说非常入门级的文章,别看到标题又是AJAX又是chat room,就以为用到了Atlas和HttpHandler之类复杂的东西,实际上它仅仅使用了XMLHttpRequest和Page。这就降低了读者所需要跨越的技术门槛,即使你平常只是使用P... 阅读全文

英语阅读推荐:美化文件上传框 & 无刷新文件上传

2006-12-23 01:09 by Cat Chen, 8055 visits, 网摘, 收藏, 编辑
摘要:相信很多使用过GMail的读者都会觉得它的文件上传功能作得好,首先它支持无刷新上传,其次它能够隐去丑陋的文件上传框。本期的Random Clipping重点推荐两篇与上传有关的英语技术文章,希望对大家制作一个GMail那样的上传界面有所帮助。美化文件上传框 (Styling an input type="file")"Of all form fields, the file upload fiel... 阅读全文

AJAX 在中文社区的“集体信仰动摇”?!

2006-12-03 16:37 by Cat Chen, 3843 visits, 网摘, 收藏, 编辑
摘要:最近好像在中文社区又多了关于AJAX的讨论,很多都是说AJAX仅仅是过渡技术,又或者说AJAX现在有些滥用了,反正就好像一场狂热下来大家又成了怀疑论者了。Microsoft Expression看起来最震撼的事情应该是Microsoft Expression系列被越来越多人知道,很多人都在想WPF在如此强大的设计器支持下能否干掉AJAX。首先说一下Microsoft Expression是什么,这... 阅读全文

Microsoft Ajax Beta1 - 边学边用边补充 (Part 4 - $create)

2006-11-04 01:17 by Cat Chen, 2497 visits, 网摘, 收藏, 编辑
摘要:在Beta1之前,我们可以使用Xml-Script定义对象,当然也可以用JavaScript的老方式来定义对象,不过用过后者的人肯定会觉得这种方式不太方便,因为大多数Control和Behavior都需要手动调用initialize后才能正常运作。例如CTP中的Button,不执行initialize就不会绑定DomElement的click事件,它自身的click事件也就不能被正常触发。还有be... 阅读全文

Microsoft Ajax Beta1 - 边学边用边补充 (Part 3 - ITemplate)

2006-11-01 21:18 by Cat Chen, 1827 visits, 网摘, 收藏, 编辑
摘要:首先,使用ITemplate的例子大家可以在Dflying那里找到一些: 使用ASP.NET Atlas实现拖放(Drag & Drop)效果(下) 使用ASP.NET Atlas ListView控件显示列表数据 这些例子当中,ITemplate都不是显式声明的。我们仅仅是在xml-script中制定了以某一个DomElement为基础生成一个ITemplate,但是ITemplate不... 阅读全文

扩展 Atlas 的客户端 Web Service 调用功能

2006-10-30 11:49 by Cat Chen, 2488 visits, 网摘, 收藏, 编辑
摘要:Jeffrey Zhao最近在写客户端调用WebService的有关内容,那么我也来说说。Jeffrey Zhao说到了,Beta1中只有一个onComplete,onTimeout、onError、onAborted都没有了,这3个事件都整合到onComplete中,使用者需要自己在onComplete中手动判断到底属于哪个情况。另外Jeffery Zhao最近在讨论继承WebRequestEx... 阅读全文

Microsoft Ajax Beta1 - 边学边用边补充 (Part 2 - DragDropList)

2006-10-27 02:21 by Cat Chen, 1269 visits, 网摘, 收藏, 编辑
摘要:由于我在做一个类似Live.com的东西,所以需要类似WebPart的功能。我不清楚Atlas扩展的那个所谓的Cross Browser WebPart到底是什么,支持如何,所以不敢去尝试,从而决定用DragDropList。首先,关于如何使用DragDropList,可以参考Dflying的以下两篇文章: 使用ASP.NET Atlas实现拖放(Drag & Drop)效果(上) 使用A... 阅读全文

Microsoft Ajax Beta1 - 边学边用边补充 (Part 1 - Debug)

2006-10-27 01:31 by Cat Chen, 1121 visits, 网摘, 收藏, 编辑
摘要:这Beta1的更新多就不再强调了,关键就是它对以客户端为中心的开发人员不太友善。客户端框架正在作大幅度修改,这个我不反对,但是将明显一个修改到一半的东西扔出来显然就不太好。Beta1里面的客户端框架是没问题的,不过Preview中的就衔接不上了,有些CTP原有的功能没有在Preview中保留,有些则看得出是修改中的,例如debug版的代码不太工整,enclosure和prototype书写方式混合... 阅读全文

ASP.NET AJAX Beta1 发布

2006-10-22 15:47 by Cat Chen, 540 visits, 网摘, 收藏, 编辑
摘要:Atlas在7月的CTP之后就几个月没有更新了,当然就意味着之后会来一个大更新,这就是ASP.NET AJAX Beta1。ASP.NET AJAX Beta1将原来的CTP拆分为两个部分:1.0核心和增值CTP,同时原来的Atlas Control Toolkit也改名为ASP.NET AJAX Control Toolkit了。上述3个下载都已经更新了,然而要把老的Atlas项目迁移到新版本则... 阅读全文

AJAX - 服务器端也用 JavaScript 不好吗?

2006-10-22 15:44 by Cat Chen, 1006 visits, 网摘, 收藏, 编辑
摘要:现在ASP.NET要实现AJAX已经不难了,可以用同时有服务器端扩展和客户端框架的Atlas,也可以选一个Atlas之外的服务器端JSON串并转换器和支持JSON-RPC的客户端框架。类似的,PHP等现在热门的语言都有服务器端JSON串并转换器,唯独已被人放弃的ASP没有,所以很多人都为如何在ASP上实现AJAX而感到困惑。 要在ASP实现AJAX,首先考虑的是用什么数据格式进行传输,主流的选择就... 阅读全文

Script# - 把 C# 编译为 JavaScript

2006-10-22 15:39 by Cat Chen, 1266 visits, 网摘, 收藏, 编辑
摘要:原来有一样东西叫做Script#,是Atlas的主要开发者之一的Nikhil Kothari自己编写的一个小框架,目标就是制作一个C#编译器让C#可以直接编译为JavaScript,并且是不经过编译为IL这个步骤。 之前我就说过,以MS的做法如果要想继续宠着那群很RAD的ASP.NET程序员,并且确保他们继续think inside MS's box,那就必须做一个C#到JavaScript的编译... 阅读全文

Meebo 和 GMail + Talk 等 WebIM 的实现方式

2006-10-22 15:35 by Cat Chen, 1333 visits, 网摘, 收藏, 编辑
摘要:我用Fiddler监听过Meebo和GMail + Talk,终于知道他们是如何实现event机制的了(也有人称之为Comet模式)。event包括好友发信息给你、好友上线/下线,甚至连是否显示某某人"is typing"的状态变换也算,反正就是指模仿桌面应用event机制需要服务器端主动触发客户端的东西。 例如有一个event.ashx是专门负责发送event消息的,那么工作的时候就保证一个客户... 阅读全文

初次使用Atlas JavaScript (Part 3 - 实现自己的应用)

2006-10-22 15:35 by Cat Chen, 642 visits, 网摘, 收藏, 编辑
摘要:在这里,我假设你肥肥的客户端是基于MVC设计,同时Web Service的内容是以数据为中心的。 在说客户端之前,必须先说说服务器端如何设计。如果服务器端你习惯了3层设计,那就保留你以前的数据访问层和业务逻辑层设计方法,用一模一样的方法完成这两层,只不过我们不再有通过Page表现的UI,而是通过Web Service直接暴露一些业务逻辑层的调用,这就是服务器端需要完成的一切。看起来没有了Page轻... 阅读全文

初次使用Atlas JavaScript (Part 2 - Web Service扩展)

2006-10-22 15:32 by Cat Chen, 589 visits, 网摘, 收藏, 编辑
摘要:Atlas对Web Service两方面的扩展包括:1.自动生成javascript代理类的代码2.在javascript代理类调用时使用JSON表达式进行数据交换 通过看Atlas项目的web.config,你可以发现*.asmx现在关联到了一个新的handler,也就是ScriptHandlerFactory,这个handler的行为很简单,如果请求是REST方式则用新的RestHandler... 阅读全文

初次使用Atlas JavaScript (Part 1 - JavaScript扩展)

2006-10-22 15:30 by Cat Chen, 560 visits, 网摘, 收藏, 编辑
摘要:Atlas的服务器端控件已经说了,现在说说客户端脚本。Atlas的脚本分为xml-script和javascript两部分:xml-script作为一种描述性语言主要用来做Controller,直接放在页面里面;javascript经过Atlas库扩展后可以用来写Atlas特有的客户端控件,而其内容最好放在独立的js文件中通过引用来使用。xml-script我还没有专门研究过,不是太懂其机制,所以... 阅读全文

Atlas 服务器端控件 - 易用但不灵活

2006-10-22 14:54 by Cat Chen, 243 visits, 网摘, 收藏, 编辑
摘要:首先,我会把Atlas服务器端控件区分为两类,纯服务器端控件和客户端逻辑封装控件。前者类似WebControl派生出来的控件那样,它自身并非直接呈现(render)一个客户端元素的实例就算,而是拥有复杂的服务器端逻辑,它呈现出来的HTML由交错的规则决定着;至于后者,则类似HtmlControl派生出来的控件,它所做的基本上就是将自身呈现为一个单一的客户端元素,其服务器端属性比较直接的生成客户端元... 阅读全文

ASP.NET 2.0 ClientScript Callback

2006-10-22 14:41 by Cat Chen, 645 visits, 网摘, 收藏, 编辑
摘要:当AJAX出名的时候,ASP.NET 2.0已经基本上完成并且离最后发布时间还剩下半年,此时人人都希望MS为ASP.NET 2.0加上AJAX支持但MS说我们没时间加了,AJAX将成为独立的Atlas项目并出现在ASP.NET 3.0中。不过ASP.NET 2.0中有一个非常通用的但只能称为Method而不能称为Framework的AJAX支持,那就是Callback。 Callback的使用非常... 阅读全文

2 Ways Thinking In Ajax

2006-10-22 14:21 by Cat Chen, 180 visits, 网摘, 收藏, 编辑
摘要:至今来看,ajax的模式有两种,就是Google模式和.NE­T模式。 Google模式就是服务器仅仅接收xml和返回xml,其他一­切工作都是客户端做。开发的重点在于客户端,然后xmlhttp­仅仅用于发送和接收数据,服务器端则是仅处理数据的逻辑,如果把­xmlhttp看作"透明代理"的话,那么这个设计就是属于客户­端设计了。 .NET模式则刚刚好相反,虽... 阅读全文