开关不工作

时间:2017-04-11 20:57:20

标签: javascript jquery switch-statement

这是我在这里的第一个问题,请不要生气,如果它是愚蠢的...... 所以我有这个代码块,它不起作用:

var clicks = 0;

$('body').click(function(){
    clicks ++;
    console.log(clicks);
});

switch(clicks){
       case 1:
       $('#contentlist1').fadeIn(50);
       break; 
       case 2:
       $('#contentlist2').fadeIn(50);
       break;   
       case 3:
       console.log("this is 3");
       break;           
       case 4:
       $('#contentlist4').fadeIn(50);
       break;   
       };

我想要做的是让元素在每次后续点击时一个接一个地淡入淡出,比如powerpoint bulletpoint动画,但它不起作用。

我已经将fadeIn更改为console.log('message')等,看看它是否已破坏,但我认为开关不起作用,而不是淡入淡出。 (元素已经淡出,因此淡入淡出应该正常工作)。

这段代码有什么问题?我查看了一些来源,但不应该是因为'clicks'是一个整数值。

1 个答案:

答案 0 :(得分:2)

您的switch语句应位于click函数内,您应该检查clicks何时超过max个案,

var clicks = 0;

$('body').click(function() {
    if(++clicks > 4) clicks = 1;

    switch (clicks) {
        case 1:
            $('#contentlist1').fadeIn(50);
            break;
        case 2:
            $('#contentlist2').fadeIn(50);
            break;
        case 3:
            console.log("this is 3");
            break;
        case 4:
            $('#contentlist4').fadeIn(50);
            break;
    };
    console.log(clicks);
});