デュアルレンジスライダー

UI コンポーネント Medium #range #slider #price #filter #js

最小値と最大値の 2 つのつまみで範囲を選べるデュアルレンジスライダーです。2 本の input type=range を同じトラック上に重ね、 pointer-events:none とつまみ側の個別指定で、それぞれのハンドルだけ操作できるようにしています。

▶ プレビュー

解説

最小値と最大値の 2 つのつまみで範囲を選べるデュアルレンジスライダーです。2 本の input type=range を同じトラック上に重ね、pointer-events:none とつまみ側の個別指定で、それぞれのハンドルだけ操作できるようにしています。JavaScript は両方の値を読み取り、最小が最大を上回ったら入れ替えてから、塗りつぶしバーの leftwidth を更新し、表示金額を toLocaleString() でカンマ区切りに整形します。

向いている場面

  • EC サイトや不動産検索の価格帯フィルター
  • 面積・年式・評価などの数値レンジ絞り込み
  • ダッシュボードでの期間や閾値の指定

金額のスケールは JS の a*1000 の係数を変えるだけで桁を調整できます。min max 属性を変えれば刻みや上限も自由です。ネイティブの input を土台にしているのでキーボード操作にも対応しますが、つまみが重なったときの操作性を確かめ、色やコントラストを背景に合わせて見やすく整えると安心です。

使用例・適したシーン

  • お問い合わせフォーム
  • ニュースレター登録
  • 資料請求フォーム
  • ログイン・新規登録

よくある質問

表示する金額の単位を変えられますか
JavaScript で値に 1000 を掛けてから toLocaleString でカンマ区切りにしています。この係数を変えれば桁を、前後の文字を変えれば通貨記号や単位を調整できます。
つまみの色やサイズは変更できますか
変更できます。CSS のスライダーつまみ部分で幅・高さ・背景色・枠線を指定しているので、その数値や色をブランドに合わせて書き換えてください。
追加日:2026-05-28
← すべてのスニペットへ戻る