posted @ 2011-06-15 16:16 xuld 阅读(662) 评论(0) 推荐(1)
摘要:
作为 Javascript 文档家族的一份子,它具有以下优势: 1. 操作简单。为数不多的具有图形界面的文档工具。 2. 分析智能度。可以根据上下文帮助用户补全注释,让用户尽量少写注释文档。 3. 输出格式随意。大部分文档生成工具最终都生成一个 CHM 文件-----然而只能生成CHM 文件。最终输出的是兼容各个语言的文档格式。根据这个文档格式可以生成任意作者需要的格式,而不需重写文档解析引擎。库里提供此格式的读写接口,有兴趣的用户可以自行开发插件。&预览 下载地址: http://play.xuld.net/softwares/doc(带源码, 带帮助文件);基本兼容 EXTDOC 阅读全文
摘要:
关于Javascript中的继承实现,文章有很多,但都是长篇大论,所以这里献上一篇微型博客,希望对正在学习Javascript的同学有些帮助。 在 Javascript 中, 类就是函数,要想实现类A,继承于类B 即 函数A的原型中拥有函数B的原型的全部成员。所以只需 A.prototype = new B() 这样A的原型就有B原型的全部成员了。当然这里调用了B的构造函数,为避免调用,使用一个中间函数fn。让fn.prototype = B.prototype , 这样 A.prototype = new fn() 就可以实现继承,并且fn的构造函数是空的。最后的代码为:function . 阅读全文
posted @ 2011-06-10 16:53 xuld 阅读(695) 评论(0) 推荐(0)
摘要:
说到Javascript的内置类型,已知的有 Boolean Number String Object RegExp Function Array Date Undefined Null 。但,真的就这么多么?其实还有3个类型这3个类型是Javascript执行器使用的类型,它们不能在代码中直接使用。了解它们可以让你的代码更出色。这三个类型分别是 ReferenceList Activation 。List 是最好理解的,它们用于存储多个值的列表。我们知道,在函数被执行的时候, 可以使用 arguments 来获取当前的参数。但是,arguments 是什么类型 ?Object ? ---- 阅读全文
posted @ 2011-05-20 16:49 xuld 阅读(633) 评论(1) 推荐(0)
摘要:
近期一直在做Js文档生成软件。 目前占据这个领域的主要就是 jsdoc 开源项目。先介绍下 jsdoc 本身,它是用Java开发的(其实主要是Javascript开发) 基于字符串直接处理的文档工具。 因为Javscript非常灵活,Javascript的文档生成自然也比不上Java之类的准确、有效。jsdoc本身要求在注释中大量使用一些标签来告诉文档生成器这是一个类、属性、方法或其它的类型,jsdoc在解析中是通过上下文来决定变量的归属,比如上文使用 @class 标识类, 下文的 @method 就自动处理为上个 @class 所指的类,而完全忽视了代码自身的逻辑。 且不说jsdoc的方. 阅读全文
posted @ 2011-05-19 20:34 xuld 阅读(1081) 评论(3) 推荐(0)
摘要:
jQuery 1.5 源码有8068行。很多想读 jQuery 源码的童鞋在读了一半不到就不敢往下读了,jQuery是一个 封装良好、代码紧凑 的框架。几乎很难从jQuery分离其中的一部分功能。所以在这里我分享下应该读 jQuery 源码的一些成果,以及读源码的方法。啃代码是必须的。1. 代码折叠是必须的。因此必须在支持语法折叠的编辑器里打开源码。 根据折叠层次,我们可以很快知道: 所有 jQuery 的代码都在一个函数中: (function( window, undefined ) {// jQuery 代码})(window);这样可以避免内部对象污染全局。传入的参数1是 window 阅读全文
posted @ 2011-04-04 14:58 xuld 阅读(1776) 评论(2) 推荐(5)
摘要:
获取一个节点的属性很简单, elem[ attrName ] 似乎就好,稍复杂点的还可以是 elem.getAttribute( attrName );既然这么简单,似乎就没必要介绍了。但万恶的浏览器们让这么简单的东西变得很复杂。本文讲的属性包括以下这么函数:setAttributegetAttributehasAttributesetStylegetStyle1. getAttribute getAttr 主要解决特殊属性的兼容, 比如 href src 等属性,在 IE 必须使用 getAttrbute('src', 2) 才能获取真实内容。2. setAttribute 阅读全文
posted @ 2011-03-06 00:14 xuld 阅读(1319) 评论(1) 推荐(0)
摘要:
文/xuld本文面向玩代码玩的蛋疼的读者。库和框架都是一种有别于软件、面向程序开发者的产品形式。正因为如此,也有很多人误以为库就是框架,或者认为指定语言的库就是框架。库的英语为 Library ( 简写 Lib ),框架的英语为 Framework。库是将代码集合成的一个产品,供程序员调用。面向对象的代码组织形式而成的库也叫类库。面向过程的代码组织形式而成的库也叫函数库。在函数库中的可直接使用的函数叫库函数。开发者在使用库的时候,只需要使用库的一部分类或函数,然后继续实现自己的功能。框架则是为解决一个(一类)问题而开发的产品,框架用户一般只需要使用框架提供的类或函数,即可实现全部功能。可以说, 阅读全文
posted @ 2011-02-20 12:31 xuld 阅读(10204) 评论(7) 推荐(8)
摘要:
Ext的 Resize 和 Drag 界面非常漂亮,很多朋友想把它用到自己的地方,却不想用整个Ext ,所以本文特别对这2个效果进行制作。让我们先看下效果:1. 修正一些认识。 很多朋友肯能认为拖动时的虚线和透明窗口是为了美观,但其实它们更为了效率。如果窗口里有很多元素,如果经常改变大小,会导致内部元素经常重新布局,最后导致效果卡得不能用。2. 复习上文的拖动。 上文介绍了如何实现拖动,最终我们可以通过如下代码实现拖动: elem.on('dragstart', function(){});3. resizer 节点。 resize时见到的虚框其实是一个和窗口没关的div,我们把这个div称为 阅读全文
posted @ 2011-02-15 22:56 xuld 阅读(594) 评论(0) 推荐(0)
摘要:
节点定位就是获取一个元素所在的位置。jQuery中和节点定位有关的函数为:$.prototype.offset$.prototype.position在DOM编程中,W3C已规定一系列用来定位节点的成员:offsetLeft offsetTop scrollTop scrollLeft getBoundingRect getClientRects不过这些属性被浏览器搞得无法直接用。节点定位看似简单,实现含很多的技巧。在 jQuery 中,专门定义一个类用来管理定位(内部使用)。说到位置,大家肯能想到就是元素的(x, y) 。然后事情不那么简单:假设左上角为(0, 0) 位置, 那一个元素的位置 阅读全文
posted @ 2011-02-13 22:02 xuld 阅读(855) 评论(0) 推荐(0)
摘要:
所谓的事件机制,就是用于实现和事件相关的功能的函数,一般我们操作事件需3个功能:绑定取消绑定执行比如elem.on('click', fn);所有js框架都提供事件函数,因为: 浏览器自带的事件不兼容。目前常用的事件实现有:[Ext] elem.on elem.un elem.fireEvent (addEventListener 等简写)[jQuery] elem.bind elem.unbind elem.trigger[mootools] elem.addEvent elem.removeEvent elem.fireEvent我使用的是:elem.on elem.un 阅读全文
posted @ 2011-02-10 22:52 xuld 阅读(476) 评论(2) 推荐(0)
浙公网安备 33010602011771号