2 回答

TA貢獻(xiàn)1803條經(jīng)驗 獲得超3個贊
一定要在上層作用域聲明的,比如這樣
$(function(){
(function() {
var counter = 0;
$('.a').on('click',function() {
counter++;
});
$('.b').on('click',function() {
if(counter > 3) {
alert('大于3');
}
});
})();
})

TA貢獻(xiàn)1895條經(jīng)驗 獲得超7個贊
因為你用匿名函數(shù)包裝了一層,所以在這個匿名函數(shù)內(nèi)定義的局部變量,在子級函數(shù)中是有效的,即你應(yīng)該:
$(function(){
var counter=0;
$('.a').on('click',function(){
counter++;
})
$('.b').on('click',function(){
if(counter>=3){
alert(大于3);
}
})
})
你原來對a的監(jiān)聽函數(shù)邏輯會導(dǎo)致counter永遠(yuǎn)是1,因為每次進(jìn)入你都是初始化為0,然后加1的。
添加回答
舉報