function cla(){
var _cla = this;
this.div=document.createElement("div"); this.getComponent=function(){
this.div.onclick=_cla.clickDiv;//因为这里的this指的是this.div return this.div;
} this.clickDiv=function(){
//do something
}
}
解决方案 »
- 各位大神推荐几本JS方面的书籍,热销的那种。
- encodeURI什么情况下需要用?
- 請問怎樣區分window.close和document.close
- 类似于太平洋网站的右下角popup是怎么实现的(附样图)
- OA系统中的,网络无纸传真,是怎么实现的?
- js 构建树
- 我用window.opener.location.reload();刷新网页弹出如下信息:
- 请问javascript里的switch语句,case后面跟一个数值范围怎么写?急!
- 请问那里可以找到学习javascript的网站!
- http://asp2.6to23.com/eblab/mybbs/bbslist.asp 谁能破此密码????
- 向一个二维数组添加数据
- 向一个二维数组添加数据
解决方案是:this.div.onclick=this.clickDiv.apply(this);
看看这篇文章,也许有帮助。
另外,请问下this.div.onclick=this.clickDiv.apply(this); 这段语句是什么意思,apply是什么,该怎么用啊
function test_apply(){
alert(this);
}
test_apply.apply(document, []);
就表示调用函数test_apply,并用document对象来替换test_apply中的this。不知道你能明白这个没
应用某一对象的一个方法,用另一个对象替换当前对象。
apply([thisObj[,argArray]])参数thisObj可选项。将被用作当前对象的对象。
argArray
可选项。将被传递给该函数的参数数组。
说明
如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。