[JAVASCRIPT] this 对象
看了很多javascrip代码,发现很多地方用到了this这个对象,那这个到底是什么东西阿?
先让我们来理解一个概念:
在javascript会有一个上下文的概念,任何一个对象无论是Object 还是function 都会有一个专有的上下文对象,也可以理解为它自己的拥有者。
那么我们很容易想到这个拥有者,必然有个终点,那就是window对象。
好了,那么我们理解了这个概念后,记住以下几个规则,就可以准确的判断this到底指的是个啥子玩意儿。
对象的私有对象,上下文是对象本身
匿名函数的上下文是window
用new的函数上下文为这个对象
让我们再来看些例子吧;
var testFun = function (){
alert(this);
};
testFun();
上述例子的结果是 window对象
var obj = {
getName : function() {
alert(this);
}
};
obj.getName();
上述例子的结果是一个OBJECT
根据上述理论,函数中嵌套匿名函数应该也是WINDOW对象,来看下面的代码
var obj = {
getName : function(){
var innerFun = function (){alert(this);}
}
};
obj.getName();
来看个构造函数的例子,this指的是对象
var obj = function() {
alert(this);
};
var test = new obj();
test();
介绍完毕,收工。。。。
相关文档:
很多人都用过AJAX控件吧,AJAX控件不需要刷新页面就可以到后台去读出数据到客户端.AJAX控件除了有很炫的特效外,其要功能就是不需要刷新整个页面就可以取得用户所需要的数据,我把这一块的的功能封装成一个类,方便日后可以重复使用,代码如下:
//Ajax Request Class Start
functio ......
在ajax没出来之前,一直是用iframe实现的无刷新请求。
主要的原理是:
使用js创建一个隐藏的iframe
把要提交的表单的target属性指向1中生成的iframe
在请求的页面中回调父页面的方法
这样就实现了一个简单的“异步提交”
看起来和ajax一样的效果,那为什么还要有ajax,我们来比较下:(以下把ajax技术称为X ......
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="return f ......
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<mce:style type="text/css"><!--
div#show { float: right; color: blue; }
--></mce:style><style type="text/css" mce_bogus=" ......
1.创建节点并添加内容:使用的方法:createElement和createTextNode
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>HTML DOM</title>
&nbs ......