关于内部赋值回调函数时THIS的问题 function插件 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function cls(){ this.mid = Math.random(); this.obj = document.createElement('div'); this.obj.setAttribute('id', this.mrid); var that=this; $(this.obj).xxx.dialog({ xxxEvent : function(){ $('#'+that.mid).xxx.hide(); } });} 每个 function 内的this 都不太一样。要确保用一个的话最好就是 var that = this 楼上的做法,那就安全啦 1楼的方法是对的。我觉得你也可以查查这个插件的“XXXEvent”回调中有没有参数,一般类似插件都会在回调函数中将调用该插件的jquery对象(即上面的$(this.obj))作为默认参数的。 第一种方式function cls(){ this.mid = Math.random(); this.obj = document.createElement('div'); this.obj.setAttribute('id', this.mrid); var me=this; $(this.obj).xxx.dialog({ xxxEvent : function(){ $('#'+me.mid).xxx.hide(); } });}第二种,要用call或者apply更改this的作用域,这个得看你的代码怎么写的了。。第一个参数要为作用域的对象 jquery 如何得到单击table单元中某个元素的事件 考试系统中,如何实现规定考试时间 一个删除链接中引号问题,请大家帮忙。 JS指定table的问题 请教关于 判断当前鼠标 所在超链接的问题 再问一个javascipt控制table的问题! 在文本框中只输入数字的问题:怎么排除汉字? iframe的传值问题 急!如何动态改变iframe的src值? ????最怪的问题::调用子程序时不能使用括号 ??有这事吗?????????? javascript做的一个日历插件,有兴趣的可以看看。 获取html和表单值的html
function cls(){
this.mid = Math.random();
this.obj = document.createElement('div');
this.obj.setAttribute('id', this.mrid);
var that=this;
$(this.obj).xxx.dialog({
xxxEvent : function(){
$('#'+that.mid).xxx.hide();
}
});
}
我觉得你也可以查查这个插件的“XXXEvent”回调中有没有参数,一般类似插件都会在回调函数中将调用该插件的jquery对象(即上面的$(this.obj))作为默认参数的。
function cls(){
this.mid = Math.random();
this.obj = document.createElement('div');
this.obj.setAttribute('id', this.mrid);
var me=this;
$(this.obj).xxx.dialog({
xxxEvent : function(){
$('#'+me.mid).xxx.hide();
}
});
}
第二种,要用call或者apply更改this的作用域,这个得看你的代码怎么写的了。。第一个参数要为作用域的对象