易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript设计模式的一种有趣的封装小技巧

      javascript设计模式第一张有一个有趣的实现继承的方法,当然javascript本质上是实现继承,还不是典型意义上的"is-a"的逻辑继承或者说是语义继承。基本的方法就是通过function的prototype属性。
一,很简单的方法
<script type="text/javascript">
<!--
var Anim = function(){};
Anim.prototype.start = function(){alert('start');};
Anim.prototype.stop = function(){alert('stop');};
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>
二,把prototype的整体赋值-对象字面量法
<script type="text/javascript">
<!--
var Anim = function(){};
Anim.prototype = {
start:function(){alert('start');},
stop:function(){alert('stop');}
};
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>
 
注意:对prototype属性整体赋值只能是用户自定义的构造函数,对javascript内置的构造函数是不能的,如Function.prototype= {};
是无效的。
三,把prototype的赋值提到Function对象的prototype来操作。
<script type="text/javascript">
<!--
//对Function构造函数的prototype增加扩张函数
Function.prototype.extend = function(method, func){
this.prototype[method] = func;
return this; //支持链式操作
};
//Anim是新的Function实例,它的[[prototype]]是指向Function.prototype,因此Anim.extend可以通过搜索原型链
//而调用Function.prototype.extend方法,该方法返回this,也就是对象Anim
var Anim = function(){};
Anim.extend('start', function(){alert('start');}).extend('stop', function(){alert('stop');});
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>


相关文档:

ie的javascript语句失效修复方法

2007-01-20 01:01
ie的javascript失效了,不是设置的问题
折腾了一晚上终于在水木上找到答案了,经过试验成功了。感谢这位haning。也希望转载之后,这篇文章能帮助更多的人。
================================================
发信人: haning (柏寒宇), 信区: Virus
标  题: KAV6.0使javascript语句失效修复方法 ......

修复弹出JavaScript对话框时页面背景变白的问题

from http://niunan.javaeye.com/blog/248256
Page.ClientScript.RegisterStartupScript(Page.GetType(),"message", "<mce:script language='javascript' defer>alert('验证码输入错误!');</mce:script>"); ......

400多个JavaScript特效大全

400多个JavaScript特效大全,包含全部源代码和详细代码说明,不可多得
JavaScript实现可以完全自由拖拽的效果,带三个范例     http://www.sharejs.com/showdetail-501.aspx 
javascript实现可以自由拖动的树形列表     http://www.sharejs.com/showdetail-500.aspx  ......

javaScript验证提交

javaScript验证提交
看例:
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT=""&g ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号