摘要:今天我要分享的是模块管理,这是Jla框架的一个非常重要的内容,本篇所介绍的模式也将比前面介绍的Jla框架核心存在更多争议,坦白的说,我的这个解决方案面向了复杂的设计模式问题,却并没有提出自己的解决方案,最多只是将问题变得更清晰一些。 大家都知道,要开发一个较为复杂的程序,光靠OOP的思路肯定是解决不了问题,因为OOP解决的是类之间组织的问题, 对于各个功能之间的耦合的解决办法,并没有提出什么实质的解决方案,针对这一点网上有一个流传广泛的《可扩展的JavaScript架构》的解决方案,还有这个PPT,这个解决方案的主要思路如图: 总体上来讲,就是沙箱的机制,将各个功能逻辑拆分为一个个的模块,各个
阅读全文
摘要:今天轮到分享这个框架的配置管理机制,一般来讲,每个代码单元都可能允许通过配置参数来实现定制化的界面和功能,如果没有配置,一般是很难将一个代码单元直接移植到另一个应用里面去使用,这一章,我简单的分享一下我为Jla框架设计的配置机制。 配置机制需要实现在任意地方,对任意的代码单元进行统一的配置,而代码单元在读取这个配置的时候,按照统一的标准去读取,而不应该该配置是由哪个代码单元设置的,这就是配置机制的设计思路,进一步将代码单元和应用本身分离开来。 我设计的配置机制非常简单,对代码单元来讲,只需要这样使用即可读取配置:[代码] 这个程序简单的读取了自己的两项配置,Js.Config的get方法有三个
阅读全文
摘要:前面的一篇文章,我介绍了Jla框架的代码单元的规范,为什么需要有这样的规范?最主要的目的还是将能够将代码和功能进行有条理的拆分,让每个代码单元仅仅关注自身的逻辑,这样就可以提高代码的重用性。 可是要真的实现让每个代码单元能够心无旁骛的开始自身逻辑的实现,仅仅有一个框架规范还远远不够,我们必须对一些大部分代码单元都会关心的问题提供一个合理的解决方案,保证代码单元不再为这些事情而操心,其中最重要的两个解决方案是资源管理和配置管理,关于配置的管理,我会在下一篇文章之中讲到,本文将首先讲到资源管理。 在本框架之中,每个程序是以JavaScript为主体的,但是单靠JavaScript,肯定不能实现那些
阅读全文
摘要:这一篇将介绍Jla框架的核心,在此之前,先要介绍"Jla"这个名称,全称是"JavaScript Lazy App",这个框架的核心是将一系列代码单元组合起来,在页面上按需加载,也就是通俗提到的"懒载入",这也就是这个名字的由来。 当我们来仔细审视JavaScript相对于其他语言的特点时,我们会发现,安全性和对懒载入的支持是我们不能忽视的特性,安全性是指用户通常会信任JavaScript脚本的运行,因此运行的平台非常广泛,而懒载入则使得我们在开发之中,可以灵活的控制程序单元从服务端流向客户端的过程,这样,就为使用JavaScript进行大型项目的开发提供了可能。 在现在,越来越多的桌面应用程
阅读全文
摘要:不经意间,从事前端开发已经有7年了,慢慢的,我从最开始的写简单的表单验证脚本和滑动效果,过渡到基于OOP的类库开发,然后又经历了长时间的JavaScript模块化开发过程,现在,我开始觉得应该重新整理对JavaScript开发的模式和思路,因此,我会开始写一系列文章来介绍我在JavaScript开发遇到过的问题、解决方法,以及我目前认为比较合理的JavaScript开发新模式。 这些心得都是直接针对我以前遇到的项目的解决方案,因此不见得会对读者带来直接的借鉴意义,因为据说“简单的项目都是一样的,复杂的项目则各有各的复杂”,但是我觉得我遇到的问题应该也是进行大型的JavaScript开发都会遇到
阅读全文
摘要:实在抱歉,很少有技术求助类型的帖子被发到博客园首页这个万众瞩目的地方,不过作为一个使用JavaScript开发了多年的开发人员,我觉得这个问题还是有一定的深度的,而且,我确实被这个问题困扰了很久,因此,特别发布求助贴到博客园首页,希望这个问题不会被资深的JavaScript专家觉得太过简单而直接忽略。 这个问题主要是:如何在IE之中获得鼠标事件相对于某个层的位置,这个问题看似简单,不过下面的这个网...
阅读全文
摘要:现在的网站或多或少会链接一些站外脚本,例如网站统计代码,网站广告代码,网站的一些附加服务等,那些和网站功能密切相关的我们且不去提它,关键是由一些例如网站统计代码这样的站外脚本,如果将网站的速度拖得很慢,就不太好了。 我现在就遇到了一个这样的问题,有用户说我的网站反应速度很慢,我看了一下,发现我使用了一个自己通过Google App Engine开发的一个网站附加功能...
阅读全文
摘要:上次给我的闭关纪要开了一个头之后,我就一直继续闭关研究,虽然我研究的东西大多很有来头,而且我也预计将源码公开,可是都还没有一个完整的东西来给大家介绍,几天前,我在解决我的网站性能问题的时候突然有一个想法,能够解决我一直很想解决的子域名跨域的问题,觉得应该与大家分享一下,不知道有没有人用过。 问题描述如下:我个人使用Ajax的方式通常是调用类似Json或者Rest接口...
阅读全文
摘要:以前在Google上输入site:step1.cn来搜索总是没有结果,今天终于出现了一项结果,应该是我昨天更改有了效果。 以前我在调试URL重写的时候在页面最开始加入了一个HTML注释过的输出,结果在返回的页面HTML中,出现以下情况 123 本来应该是页面第一行内容的DocType在第二行了,所以可能页面上内容看起来正常而Google认为是一个...
阅读全文
摘要:偶然要用一个基于Javascript的饼图,所以到网上找了一通,却基本上没有什么好用的,所以抽空自己写了一个(并不只是包含饼图),现在已经支持绘制饼图和柱形图,更多的功能现在还在继续开发中, 这个vml chart程序基于VML和Javascript对象功能编写,相对来讲比较好用,以下是图片预览: 等我写到差不多了就会公布源代码和使用说明。
阅读全文
摘要:iframe,尤其是不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是iframe的大小却不像层那样可以“伸缩自如”,所以带来了使用上的麻烦,给iframe设置高度的时候多了也不好,少了更是不行,现在,我终于知道了让iframe动态体调整高度的方法,主要是以下JS函数: function SetCwinHeight(){ var cwin=docu...
阅读全文