[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();
介绍完毕,收工。。。。
相关文档:
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetL ......
很多人都用过AJAX控件吧,AJAX控件不需要刷新页面就可以到后台去读出数据到客户端.AJAX控件除了有很炫的特效外,其要功能就是不需要刷新整个页面就可以取得用户所需要的数据,我把这一块的的功能封装成一个类,方便日后可以重复使用,代码如下:
//Ajax Request Class Start
functio ......
在ajax没出来之前,一直是用iframe实现的无刷新请求。
主要的原理是:
使用js创建一个隐藏的iframe
把要提交的表单的target属性指向1中生成的iframe
在请求的页面中回调父页面的方法
这样就实现了一个简单的“异步提交”
看起来和ajax一样的效果,那为什么还要有ajax,我们来比较下:(以下把ajax技术称为X ......
通常javascript代码可以与HTML标签一起直接放在前端页面中,但如果JS代码多的话一方面不利于维护,另一方面也对搜索引擎不友好,因
为页面因此而变得臃肿;所以一般有良好开发习惯的程序员都会把javascript代码放到独立的js文件中,其他页面通过引入该js文件来使用相应的
javascript代码。
今天在做一个小新闻系统的管理 ......