0

ページにスライダー (範囲付き) があり、ユーザーが設定した範囲に応じて画像を表示または非表示にしたい。これは、コードの最後にある条件文で行います。条件ステートメントは、スライダーの初期値 [1500,1600] には正しく反応しますが、ユーザーがスライダーを動かしても反応しないため、値が変更されます。

$(function() {
    $( "#slider-range" ).slider({
        range: true,
        min: 300,
        max: 3000,
        values: [ 1500, 1600 ],
        step: 10,
        slide: function( event, ui ) {
            $( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
        }
    });

    $( "#amount" ).val(
        "$" + $( "#slider-range" ).slider( "values", 0 ) +
        " - $" + $( "#slider-range" ).slider( "values", 1 )
    );

    var handlevalues = ( $("#slider-range").slider('values') );

    var dot0001 = { price: 1300 }


    if (handlevalues[0] > dot0001.price) {
        $("#dot0001").css("visibility", "hidden")
    } else {
        $("#dot0001").css("visibility", "visible")
    }
});
4

1 に答える 1

0

slide同じ条件ステートメントを関数に追加します。

slide: function( event, ui ) {
    $( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );

    var dot0001 = { price: 1300 };
    if (handlevalues[0]>dot0001.price){
        $("#dot0001").css("visibility", "hidden");
    } else{
        $("#dot0001").css("visibility", "visible");
    }

}

コードの繰り返しを避けるために、そのステートメントを別の関数に入れ、両方の場所から呼び出すことができます。

于 2013-01-20T02:27:27.453 に答える