Javascript 在其他函数jquery中使用变量 主功能(BombPosTopr、BompPosLeftr){ if(CheckRight==false){ //$(“#Main”)。前缀(“”); ArrayEffects.push(新效应器VOORBOM(BombPosTopr,BombPosLeftr)); BombPosLeftr+=30; } }; this.explosionTime2=setTimeout(函数(){ **self2.removeEffect()** } } 功能效应BOM(BombPosTopr、BompPosLeftr){ var self2=此; this.el=$(''); 此.el.addClass(“效果”); css({position:'absolute',top:BombPosTopr+'px',left:BompPosLeftr+'px'}); $(“#Main”).prepend(this.el); self2.removeEffect=函数(){ **self2.el.remove()** }
我有两个函数,我主要需要添加效果,所以我将它们放在一个数组中,并使用对象EffectBom 现在最大的问题是我需要在另一个函数中使用self2.removeEffect(),但它找不到它Javascript 在其他函数jquery中使用变量 主功能(BombPosTopr、BompPosLeftr){ if(CheckRight==false){ //$(“#Main”)。前缀(“”); ArrayEffects.push(新效应器VOORBOM(BombPosTopr,BombPosLeftr)); BombPosLeftr+=30; } }; this.explosionTime2=setTimeout(函数(){ **self2.removeEffect()** } } 功能效应BOM(BombPosTopr、BompPosLeftr){ var self2=此; this.el=$(''); 此.el.addClass(“效果”); css({position:'absolute',top:BombPosTopr+'px',left:BompPosLeftr+'px'}); $(“#Main”).prepend(this.el); self2.removeEffect=函数(){ **self2.el.remove()** },javascript,jquery,Javascript,Jquery,我有两个函数,我主要需要添加效果,所以我将它们放在一个数组中,并使用对象EffectBom 现在最大的问题是我需要在另一个函数中使用self2.removeEffect(),但它找不到它 Thnx用于阅读-帮助!您需要更改变量的范围。添加 function Main(BombPosTopr, BompPosLeftr){ if (CheckRight == false){ //$("#Main").prepend('<div class="Effect" style="ab
Thnx用于阅读-帮助!您需要更改变量的范围。添加
function Main(BombPosTopr, BompPosLeftr){
if (CheckRight == false){
//$("#Main").prepend('<div class="Effect" style="absolute; top:' + BombPosTopr + 'px; left: '+ BombPosLeftr +'px;"></div>');
ArrayEffects.push(new EffectVoorBom(BombPosTopr,BombPosLeftr));
BombPosLeftr += 30;
}
};
this.explosionTime2 = setTimeout( function(){
**self2.removeEffect();**
}
}
function EffectBom(BombPosTopr, BompPosLeftr){
var self2 = this;
this.el = $('<div/>');
this.el.addClass('Effect');
this.el.css({position : 'absolute', top : BombPosTopr + 'px', left : BompPosLeftr+'px'});
$("#Main").prepend(this.el);
self2.removeEffect = function(){
**self2.el.remove();**
}
到文件的顶部并更改
var self2;
将来
var self2 = this;
这里的嵌套错误。您有一个额外的
}在结束时,在中间,一个丢失<代码> } /代码>。在解决这个问题时,格式化您的代码,我不能否决一个建议,除非有必要,否则建议使用全局变量。您提出了一个替代方案,给出了ASKER提出的什么?AsKER的代码是不完整的,并且有一些嵌套PRO。问题,因此在这一点上没有足够的信息来确定正确和最佳的答案。@Ding同意cdhowie的观点,即这是一个简单的答案,可能会造成更多的麻烦。一个更好的答案应该尝试比全局变量更好地确定变量的范围
self2 = this;