-1

私はこのスクリプトを作成しますが、仕事は好きではありません。私は単一のケースをテストしましたが、すべて正常に動作しましたが、スイッチモードにすると、マウスが検出を停止し、いつか動作し、アニメーションが同時にケース1:およびケース2:....

function muovi(){
var caso = Math.floor((Math.random()*2)+1);
alert (caso);
switch(caso){
case 1:
//go on and stop to see me
$(".vola").css("background-image", "url(img/gif/sx.gif)");
$(".vola").animate({"left": "+=300px"}, 10000);
setTimeout(function(){$(".vola").css("background-image", "url(img/sprite/fr1.png)")}, 10001);  
setTimeout(function(){$(".vola").animate.stop()}, 10002);
case 2:
//go back and sto to see me
$(".vola").css("background-image", "url(img/gif/dx.gif)");
$(".vola").animate({"left": "-=300px"}, 10000);
setTimeout(function(){$(".vola").css("background-image", "url(img/sprite/fr1.png)")}, 10001);  
setTimeout(function(){$(".vola").animate.stop()}, 10002);
}
}

これはcssです:

.vola{
    background: url(img/sprite/sprite1dx.png);
    background-repeat: no-repeat;
    position: fixed;
    height: 61px;
    width: 31px;
    bottom: 10px;
    left: 0px;
}

そして、これは、興味深い htlm の場所です:

... div class="vola" onClick"muovi();"> ... ケース 1 とケース 2 が同時に動作するため、理解するのが難しい理由は何ですか O__O

4

1 に答える 1

0

あなたのcaseステートメントにはbreak;s がありませんでした。

$(function(){

    $('div.vola').on('click', function(){
        return window.muovi();
    });

    window.muovi = function(){
        var caso = Math.floor((Math.random()*2)+1);
        alert (caso);
        switch(caso){
            case 1:
                //go on and stop to see me
                $(".vola").css("background-image", "url(img/gif/sx.gif)");
                $(".vola").animate({"left": "+=300px"}, 10000);
                setTimeout(function(){
                    $(".vola").css("background-image", "url(img/sprite/fr1.png)");
                }, 10001);
                setTimeout(function(){
                    $(".vola").stop();
                }, 10002);
            break;
            case 2:
                //go back and sto to see me
                $(".vola").css("background-image", "url(img/gif/dx.gif)");
                $(".vola").animate({
                    "left": "-=300px"
                }, 10000);
                setTimeout(function(){
                    $(".vola").css("background-image", "url(img/sprite/fr1.png)");
                }, 10001);
                setTimeout(function(){
                    $(".vola").stop();
                }, 10002);
            break;
            default:
                alert('Hello?');
        }
    }
});
于 2012-11-13T21:18:11.373 に答える