@try
已经更新了,请从http://sourceforge.net/project/showfiles.php?group_id=228776&package_id=286201 下载新版本,因为时间关系只有简单的example。
新版本增加了对css的导入支持,和自动监视客户端浏览器是否支持gzip/deflate,如果支持,则会返回压缩后的脚本,减少网络流量。同时有别于
context.Response.Filter = new GZipStream(context.Response.Filter, CompressionMode.Compress);
context.Response.AppendHeader("Content-encoding", "gzip");的即时压缩方式,而是做到一次压缩多次使用的机制,缓存压缩过的byte[]并进行文件的修改跟踪。
@try
sorry,最近比较忙,还没静下心来想css的相关最优设计,我会尽量找个时间做一次更新.
--引用--------------------------------------------------
浪子: @try:<br>本来在设计中,不过没有想到最优方案,所以暂时没有包含在当前的代码中,我会在下一次更新中包含此项内容。<br>
--------------------------------------------------------
楼主什么时候更新 含css的方案啊
我觉得还是ziyou门好点吧,这个评论就是通过ziyou门发的,怎么养,速度可以吧,,,ziyoumen还是有可取之处啊
@allenpan [未注册用户]
@Klesh Wong
不好意思,删除了你们各自的一条评论,只谈技术。
@Ariex [未注册用户]
Hotspot Shield还没用过,代理是在正常不能访问的情况下,我才会选择的方案,等需要的时候再尝试下Hotspot Shield。
幸好sourceforge的很多project是开通svn的,svn使用https,基本不影响使用。
Q:那个tor的插件也和gladder那样,不需要强之所有连接都通过代理么?
A:似乎是所有连接-_-!!!
@wiki [未注册用户]
@allenpan [未注册用户]
我对文章和评论的某些文字进行了修改,莫谈政治^_^
gladder的好处是,可以只有一个页面使用代理打开,不过坏处是无法下载任何东西
那个tor的插件也和gladder那样,不需要强之所有连接都通过代理么?
Hotspot Shield就是每一页都会在上面放一个广告……
Hotspot Shield就很好啊,连接很快,可以高速下载,觉得比Tor好多了
貌似gladder用起来没看到多少xx信息啊??难道我直接被我无视?
@Jeffrey Zhao
^_^
@软件打工者
修改了些敏感的单词.
@萧寒
我在公司(网通)和家里(电信)使用Tor访问sourceforge速度都还不错,我家里比以前直接访问还快些:),可能是你的链路选得刚好不是很好吧。
tor 太慢,用免费的VPN吧,速度又快,又不被墙挡。哈哈
我用tor有一段时间了,sourceforge没有被和谐以前,主要用来下载VOA和BBC的英语教学内容。没办法,在外包公司,要不断提高鸟文水平才行。这个和在线代理最大的区别就是可以下载东西,以前firefox的gladder插件只能浏览,下载往往受到限制。
谢谢介绍。已经用上了。提醒一下,这种内容的标题最好隐蔽一些,免得惹来麻烦。
word 2007 发布出来格式不怎么好看,大家凑合着看,睡觉先^_^
@zzsdream
直接调用,那就是个函数而已,比如:
setInnerHTML (document.getElementById('divContainer'),'');
@try:
本来在设计中,不过没有想到最优方案,所以暂时没有包含在当前的代码中,我会在下一次更新中包含此项内容。
不知楼主是否能做稍微改动,把css也用此类似方式处理,其实css文件和js几乎应用场景都一样。
这样这个组件应用就比较广泛了。呵呵:)
谢谢反馈.
已经修改了程序,添加了Last-Modified和ETag的支持,对于F5的刷新模式,已经处理为304.
sourceforge似乎上不去,不过svn可以上,你可以从svn下载最新版本.
https://scriptloader.svn.sourceforge.net/svnroot/scriptloader
-引用--------------------------------------------------
try: 使用工具检测了下,按“f5”涮新 ,脚本还是返回200的,这个应该可以处理成304的。按“enter”,是cache了
--------------------------------------------------------
使用工具检测了下,按“f5”涮新 ,脚本还是返回200的,这个应该可以处理成304的。按“enter”,是cache了
@try
loader没有缓存,config的信息是单例的,再由FileWatcher监管。不需要担心重复读取:)
而Loader.load是在客户端进行了,一个链表而已:)
LangZi.Scripts.ScriptLoader loader = LangZi.Scripts.ScriptLoader.RegisterInstance(this);
loader.Load("jquery");
建议缓存下loader对象,没具体看代码,loader.load是否每次都要去读config依次加载config内容?
@怪怪
是的,回头再细想的时候,是会发现很多不一致的概念细节.
如果硬往上去凑,结果可能会误导没有真正认识其本质的读者.
不过感觉这些东西需要更多的亲身体验,才会比较明白,具体实际应用和概念阐述间的差异.
对于模式,我觉得李建忠老师的webcast中讲的学习原则比较有用:你要知道这个模式是为了解决什么问题,封装什么变化.这才是模式出现的最本源目的.
确实是链, 可惜和真正的职责链还是有很大不同的。 不要说设计模式可以有变体, 当目标、 行为方式、 效果都不一样的时候, 因为结构上的相似性而套近乎, 对知识的传播不利。
老吕的职责链说的也基本歪了。
职责链的翻译方法其实就不妥, 应该叫响应链更好一些。
#11楼 2008-06-13 19:13 | 红马天下
一句话,太复杂了!
确实,简单问题复杂化,垃圾就是这么制造的
现在没有提供压缩,以前的SmartScript有,但是js的压缩无法保证100%正确,有时候会出现问题.所以还是考虑不加入压缩机制,等到有好的算法出现,才考虑.
因为现在对缓存的控制已经很精确了,所以我觉得不压缩也可以接受:)
如果你觉得需要加入压缩可以将SmartScript里面的那个压缩代码拷贝到ScriptLoader的ReadText方法内就可以了:)
--引用--------------------------------------------------
超晨: 上篇文章不知道这个东西要干嘛,这下清除了,很不错的东西啊!
最后合并发布的JS文件有没有压缩?
--------------------------------------------------------
上篇文章不知道这个东西要干嘛,这下清除了,很不错的东西啊!
最后合并发布的JS文件有没有压缩?
我没有想过做花哨的功能,或许只能说你暂时没有这种需求而已,这些功能都来自实际开发项目的需求。
谢谢!
--引用--------------------------------------------------
坏人: 多关注核心功能,少做花哨的功能会更好。
--------------------------------------------------------
这个是园子里下的vsstylemanager1.0.6 ,你可以search下。
--引用--------------------------------------------------
小生: 樓主的IDE環境不錯﹐能否共享~
--------------------------------------------------------
@化石 [未注册用户]
其实你的问题很好解决,比如你将WebForm1.aspx.js,分成很多个小文件
假设为
WebForm1.aspx.1.js
WebForm2.aspx.2.js
如果你要实现合并,只要在user.config 里面配置这讲几个节点
Script Name=''WebForm1.aspx.1" Inherit='WebForm1.aspx.1.js'
Script Name=''WebForm1.aspx.2" Inherit='WebForm1.aspx.2.js'
然后在WebForm1.aspx.js中使用以下代码:
using(''WebForm1.aspx.1");
using(''WebForm1.aspx.2");
则他们就会合并在一起下载,而且可以做缓存,除非其中任何一个文件的最后修改时间改变,否则可以一直不要再下载。
文件生成自动会做合并,你用HttpWatch监视下就知道了
如果你想要把小文件合并,只要配置成依赖关系,保证是在一次性下载的,而且不会重复下载相同的小片段。
如果你没有依赖关系,可以利用ScriptLoader引入js的第三个方式,使用虚拟的聚合文件。
比如我之前的例子中:
只要通过引入XML就实现了将core和burshxml合并的目的,但是xml.js是不存在的,会自动生成一个虚假的空白js文件。
--引用--------------------------------------------------
化石: 在开发富客户端应用的时候,脚本组织确实是一件比较麻烦的事情,楼主的这个东西不错。
不过在开发的时候,为了代码管理方便、或者方便并行开发,往往会生成比较多的js文件;而到了发布的时候,又需要将这些文件合并成几个文件。
您是不是可以考虑一下这样的需求?
--------------------------------------------------------
在开发富客户端应用的时候,脚本组织确实是一件比较麻烦的事情,楼主的这个东西不错。
不过在开发的时候,为了代码管理方便、或者方便并行开发,往往会生成比较多的js文件;而到了发布的时候,又需要将这些文件合并成几个文件。
您是不是可以考虑一下这样的需求?
唉,果然还是标题党比较吸引人,你啥都没注意到,就记得标题党了^_^
--引用--------------------------------------------------
巫云: 我也是标题档,沙发
!
--------------------------------------------------------
过奖,过奖^_^
--引用--------------------------------------------------
体彩: 受益颇深,转走了哈!!!
最喜欢你的编程意境,你一定攻无不克,呵呵
--------------------------------------------------------
受益颇深,转走了哈!!!
最喜欢你的编程意境,你一定攻无不克,呵呵
测试还真是不过关啊,确实有这个问题,将会在下个版本中修复,或者你也可以从svn中获得最新的代码,已经修复这个问题。
--引用--------------------------------------------------
try: 楼主,这个脚本管理器,客户端应该不缓存,每次都是 200请求
--------------------------------------------------------
楼主,这个脚本管理器,客户端应该不缓存,每次都是 200请求
re: 乱弹《技术是怎么练成的》 Jeky Zhang 2008-06-09 16:50
写得不错!支持!
不管做什么事情,态度是最重要的:)
是的,ScriptLoader的目的和JSI一样,都是为了管理引入的js类库的.
目前,ScriptLoader的功能比JSI弱,JSI有异步载入,同步载入功能,而ScriptLoader目前没有,但是ScriptLoader跟Asp.Net结合更紧密些,同时对版本和缓存的控制会更注重些.而JSI是个比较纯客户端的框架,JSI的新版似乎跟java有了部分结合.
类似的框架还有google.loader,jsloader等等. 不过目前for asp.net暂时应该还只有ScriptLoader.
--引用--------------------------------------------------
化石: 看过一个叫JSI的项目:
<a href="http://www.xidea.org/project/jsi/" target="_new" rel="nofollow">http://www.xidea.org/project/jsi/</a>
好像和楼主的这个很类似。
--------------------------------------------------------