0

Web サイトの画像間をフリックできるコードを作成しようとしていますが、JavaScript と jQuery を使用しています。ボタンをクリックすると、3 つの画像の次の画像に移動します。私はこれを使用.hide();してこれを行いました。これを.show();行うにはif、変数がtrueであり.click()、ボタンを押すと。

私の問題は、最初の if ステートメントで機能することですが、最初の if ステートメントの結果により 2 番目の if ステートメントが true になり、それも実行されるため、3 番目の if ステートメントが実行されます。.click()イベント。ボタンを再度クリックする前にコードの実行を停止する方法があるかどうか、またはいくつかの画像間で変化するものをコーディングするより簡単な方法があるかどうか疑問に思っていました.

どんな助けでも大歓迎です、私はこれにかなり慣れていないので、少し混乱しています!

これが私のコードです:

$(document).ready(function(){
                        $("#Image1").show();                     
                        var visbile1 = true;
                        $("#Image2").hide();
                        var visible2 = false;
                        $("#Image3").hide();
                        var visible3 = false;

                        $("#rightButton").click(function(){     
                                if (visible1 = true) {
                                $("#Image2").show();
                                $("#Image1").hide();
                                var visible3 = false;
                                var visible2 = true;
                                var visible1 = false;
                                };
                        });
                        $("#rightButton").click(function(event){
                                if (visible2 = true) {
                                $("#Image3").show();
                                $("#Image2").hide();
                                var visible3 = true;
                                var visible2 = false;
                                var visible1 = false;
                                };
                        }); 
                        $("#rightButton").click(function(){     
                                if (visible3 = true) {
                                $("#Image1").show();
                                $("#Image3").hide();
                                var visible3 = false;
                                var visible2 = false;
                                var visible1 = true;
                                };
                        });
                });             
4

2 に答える 2

2

問題が解決された場合にのみ、1 つのイベントを 3 つにバインドします。

$("#rightButton").click(function(){     
    if (visible1 = true) {
        $("#Image2").show();
        $("#Image1").hide();
        visible3 = false;
        visible2 = true;
        visible1 = false;
    }
    else if (visible2 = true) {
        $("#Image3").show();
        $("#Image2").hide();
        visible3 = true;
        visible2 = false;
        visible1 = false;
    }    
    else if (visible3 = true) {
        $("#Image1").show();
        $("#Image3").hide();
        visible3 = false;
        visible2 = false;
        visible1 = true;
    };
});

「または、いくつかの画像間で変化するものをコーディングするはるかに簡単な方法がある場合。」

私はあなたのためにコードを書きませんが、はい、あります:)

于 2013-10-25T17:27:29.633 に答える