ウェブサイトにスライダーがあり、スライドすると画像が消えたり現れたりします。これは、条件ステートメントによって行われます。
$(function () {
$("#slider-range").slider({
range: true,
min: 300,
max: 3000,
values: [300, 3000],
step: 10,
slide: function (event, ui) {
$("#amount").val("$" + ui.values[0] + " - $" + ui.values[1]);
var handlevalues = ($("#slider-range").slider('values'));
var object0001={price:1300}
var object0002={price:1400}
var object0003={price:1240}
if (object0001.price > handlevalues[0] && object0001.price < handlevalues[1]) {
$("#dot0001").css("visibility", "visible");
} else {
$("#dot0001").css("visibility", "hidden");
}
if (object0002.price > handlevalues[0] && object0002.price < handlevalues[1]) {
$("#dot0002").css("visibility", "visible");
} else {
$("#dot0002").css("visibility", "hidden");
}
if (object0003.price > handlevalues[0] && object0003.price < handlevalues[1]) {
$("#dot0003").css("visibility", "visible");
} else {
$("#dot0003").css("visibility", "hidden");
}
}
});
});
問題は、100 を超える画像と対応するオブジェクトがあり、それらをすべて追加するには時間がかかり、コードが非常に長くなってしまうことです。その上で、毎日画像を追加および削除します。これを短くする方法はありますか?これは私が考えたことですが、私にはそれを行う知識がありません。
jQuery で、名前が「object」で始まり、プロパティ「price」の値がスライダーの範囲内にあるすべてのオブジェクトを識別できるようにします。これを簡単にするために、これを set1 とします。
次に、jQuery に、「ドット」で始まり、セット 1 のオブジェクトと同じ 4 桁の数字で終わるすべての ID を見つけて、それらを表示し、「ドット」で始まる ID を持つ他のすべての画像を非表示にします。 .
与えられたコードを使用した例: jQuery はそれをスキャンして見つけますobject0001.price= 1300
。次に、jquery は を持つイメージを探しますid=dot0001
。object0001.price=1300
スライダー画像の範囲内にある場合はid=dot0001
表示され、そうでない場合は非表示になります。
どんな助けでも感謝します。質問があれば、私はここにいます。