javascript的self和this使用小结

javascript的self和this使用小结

ID:35294585

大小:16.02 KB

页数:15页

时间:2019-03-23

javascript的self和this使用小结_第1页
javascript的self和this使用小结_第2页
javascript的self和this使用小结_第3页
javascript的self和this使用小结_第4页
javascript的self和this使用小结_第5页
资源描述:

《javascript的self和this使用小结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、JavaScript的self和this使用小结-ued-博客园本文摘自:http://www.cnblogs.com/reommmm/archive/2010/01/20/1652469.html一、self  这个非常简单。我们知道,打开任何一个网页,浏览器会首先创建一个窗口,这个窗口就是一个window对象,也是js运行所依附的全局环境对象和全局作用域对象。self指窗口本身,它返回的对象跟window对象是一模一样的。也正因为如此,window对象的常用方法和函数都可以用self代替window。举个例子,常见的写法如“self.close();”

2、,把它放在标记中:“关闭窗口”,单击“关闭窗口”链接,当前页面关闭。  二、this关键字   在讲this之前,看下面的一段代码: 代码 functionthisTest(){this.textValue='this的dom测试';this.element=document.createElement('span');this.element.innerHTML=this.textValue;this.

3、element.style.color="blue";this.element.style.cursor="pointer";this.element.attachEvent('onclick',this.ToString);}thisTest.prototype.RenderDom=function(){document.body.appendChild(this.element);}thisTest.prototype.ToString=function(){alert("单击我:"+this.textValue);};vartest=newthisT

4、est();test.RenderDom();//test.ToString();   本来的目的是想在body中添加一个span元素,对于这个span元素,制定了它的字体颜色,悬浮在它上面的鼠标样式和单击触发事件。问题就出现在它的单击事件上(弹出"单击我:undefined")。也许有人会说你丫傻呀,写这么多sb代码还不就是为了实现下面这个东东吗? this的dom测试

5、  你看多简单直观,而且还不容易出错?!kao,我晕。我正要讲的是您正在使用的this.innerHTML中的this呀。1、this到底指什么?我们熟悉的c#有this关键字,它的主要作用就是指代当前对象实例(参数传递和索引器都要用到this)。在javascript中,this通常指向的是我们正在执行的函数本身,或者是指向该函数所属的对象(运行时)。2、常见使用方式(1)、直接在dom元素中使用  分析:对于do

6、m元素的一个onclick(或其他如onblur等)属性,它为所属的html元素所拥有,直接在它触发的函数里写this,this应该指向该html元素。(2)、给dom元素注册js函数a、不正确的方式  functionthisTest(){alert(this.value);//弹出undefined,this在这里指向??}  分析:onclick事件

7、直接调用thisTest函数,程序就会弹出undefined。因为thisTest函数是在window对象中定义的,所以thisTest的拥有者(作用域)是window,thisTest的this也是window。而window是没有value属性的,所以就报错了。b、正确的方式  functionthisTest(){alert(this.value);}document.getElementById("btn

8、Test").onclick=thisTest;//给button

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。