HTMLスライダーコントロールのスライダーの値 (つまみの位置)を取得する - JavaScript

HTMLスライダーコントロールのスライダーの値 (つまみの位置)を取得するコードを紹介します。

概要

HTMLスライダーのスライダーの値を取得する場合は、スライダーオブジェクトのvalue の値を取得します。
一般的にスライダーを利用する場合は、スライダーのつまみを変更したタイミングで新しいスライダーの位置を取得する場合が多いです。 スライダーが変更されたタイミングで値を取得する場合は、スライダーの onchange イベント、oninput イベントを利用します。

実装例

コード

以下のHTMLファイルを作成します。
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
  <script>
    function change_slider() {
      var slider = document.getElementById("slider1");
      var out_frame = document.getElementById("output");

      out_frame.innerText = slider.value;
    }
  </script>
</head>
<body>
  <p>スライダーコントロールの値の取得デモ</p>
  <input id="slider1" type="range" value="50" min="1" max="100" onchange="change_slider();"/>
  <p>スライダーの値</p>
  <div id="output"></div>
</body>
</html>

解説

HTMLスライダーコントロールの記述はこちらの記事を参照して下さい。
onchange 属性にスライダーが変化したときに呼び出す関数を設定します。今回の例ではchange_slider()関数を呼び出します。
change_slider 関数では、getElementByIdメソッドを呼び出し、スライダーオブジェクトの要素を取得します。
スライダーの値は、スライダーオブジェクトの value プロパティを参照します。
スライダーオブジェクトの value プロパティをid="output" の要素の位置に表示します。~
    function change_slider() {
      var slider = document.getElementById("slider1");
      var out_frame = document.getElementById("output");

      out_frame.innerText = slider.value;
    }

実行結果

上記のHTMLファイルをWebブラウザで表示します。下図のページが表示されます。


スライダーをドラッグして位置を動かします。スライダーを移動させると、値が画面の下部に表示されます。


スライダーの位置を変更します。変更すると値も変化します。

参考 : addEventListenerを利用する場合

addEventListenerメソッドを利用する場合のコードです。
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
  <script>
    window.onload = function () {
      var slider = document.getElementById("slider1");
      slider.addEventListener('change', change_slider, false);
    }

    function change_slider() {
      var slider = document.getElementById("slider1");
      var out_frame = document.getElementById("output");

      out_frame.innerText = slider.value;
    }
  </script>
</head>
<body>
  <p>スライダーコントロールの値の取得デモ</p>
  <input id="slider1" type="range" value="50" min="1" max="100"/>
  <p>スライダーの値</p>
  <div id="output"></div>
</body>
</html>

実行結果

HTMLファイルを表示し、ドラッグしてスライダーの位置を変更します。スライダーを変更するとページ下部の値も変化します。 先に紹介したonchangeい弁を利用した場合と同じ動作になります。


著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2021-04-11
iPentec all rights reserverd.