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

JavaScript 的继承机制

      继承机制,说到继承,就要想到从基类开始,但是JavaScript中的类有两大类:一,内嵌的;二,用户自定义;一般前者不会被用来做基类,原因是为了保障js的安全。但是我们可以通过prototype来对基类进行扩充,增加我们想要的属性和方法。以下是自己对继承的几种方式的理解。
1>  对象冒充,是JavaScript 和 ECMAScript实现继承的方法,在学习对象冒充实现继承前我们的先了解关键字 this 的使用,例如:
          function classA(color){
this.color = color;
this.show = function(){alert(this.color);}
}
/*
Note:
1> this 代表的是classA函数所构建的对象,而非函数classA对象本身这样说主要是为了避免(function is object)的影响;
2> 在构建classA对象时,是通过this来初始化的属性和方法的,如果用classB的this去冒充classA的this,那么就实现了简单的继承了
*/
2>继承机制的实现方式: 
    NO1:对象冒充
         对象冒充的原理:函数classA通过this来初始化属性和方法,如果用函数classB的this冒充classA的this去执行,则就会使classB具有classA的属性和方法。例如
         function classA(sColor){
this.sColor = sColor;
this.show = function(){alert(this.sColor);}
}
function classB(sColor,sName){
this.new = classA;
this.new(sColor);
delete this.new;
/*
Note
必须释放classA的引用,那样对于classA是安全的。可是再执行一段以上代码,实现多重继承。
this.new = classC;
this.new(arguments);
delete this.new;
*/
this.sName = sName;
this.say = function(){alert(this.sName);}
}
var a = new classA("blue");
var b = new classB("red","BMW");
a.show(); // blue
b.say(); //BMW
b.show(); // red
        注意:对象冒充是所有继承的前提,冒充只能使子类继承基类中的属性和方法,对基类prototype中的属性和方法是不可见的。也可以实现多重继承。
    NO2:原型链
         原型链,是继承的另一种方式


相关文档:

JavaScript 如何弹出一个对话框窗口

//定义要打开的对话框页面的地址 一般用action跳转要写明action的地址,如果需要参数,则在后面拼接
var urlDialog = "grpBlackWhiteManageAction.do?act=choiceMessageModel&GrpBWhiteListLevel=0";
//定义要弹出的对话框的模式,dialogWidth宽,dialogHeight高 等等
 var style = "dialogWidth=600px;dialogH ......

常用的javascript语句集


最短的拖动代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script l ......

IE和Firefox在JavaScript应用中的兼容性

1.document.formName.item("itemName") 问题
说 明:IE下,可以使用document.formName.item("itemName")或document.formName.elements ["elementName"];Firefox下,只能使用document.formName.elements["elementName"].
解决方法:统一使用document.formName.elements["elementName"].
2.集合类对象问题
说明:IE下,可以 ......

用Javascript定位元素位置全攻略


假设 obj 为某个 HTML 控件。
obj.offsetTop 指 obj 距离上方或上层控件的位置,整型,单位像素。
obj.offsetLeft 指 obj 距离左方或上层控件的位置,整型,单位像素。
obj.offsetWidth 指 obj 控件自身的宽度,整型,单位像素。
obj.offsetHeight 指 obj 控件自身的高度,整型,单位像素。
我们对前面提到的“ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号