スライダーの値を取得する

 スライダーの値をリアルタイムに取得することができます。スライダーのサムが移動するとonChangeイベントが発生します。イベントが発生したらテキストフィールドにスライダーのサムの値を表示します。サムの値は関数のパラメータとして渡されます。これをテキストフィールドに入れればスライダーをドラッグするとリアルタイムに表示させることができます。
 実際のサンプルは以下のようになります。(サンプルを実行する

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiスライダーサンプル(スライダー値を取得する)</title>
<link rel="stylesheet" href="slider.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="dom.js" type="text/javascript"></script>
<script src="dragdrop.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="animation.js" type="text/javascript"></script>
<script src="slider.js" type="text/javascript"></script>
<script type="text/javascript"><!--
// スライダー初期化
var slider;
window.onload = function () {
slider = YAHOO.widget.Slider.getHorizSlider("sliderbg", "sliderthumb", 0, 100);
slider.onChange = function(sliderValue) {
document.getElementById("num").value = sliderValue;
}
}
// --></script>
</head>
<body>
<h1>yuiスライダーサンプル(スライダー値を取得する)</h1>
<p>ドラッグしてスライダーを動かすと値が表示されます</p>
<form>
<input type="text" size="6" value="10" id="num">
</form>
<div id="sliderbg">
<div id="sliderthumb"><img src="images/button.gif"></div>
</div>
</body>
</html>

 スライダーの値を取得するのに特にリアルタイムでなくてもいい場合もあります。スライダーのサムが移動し終わったら発生するイベントがあります。それはonSlideEndイベントです。ただし、onChageイベントと異なりパラメータには何も渡されません。このためスライダーの値はgetValue()で取得する必要があります。(実際のサンプルを実行する

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>yuiスライダーサンプル(スライダー値を取得する)</title>
<link rel="stylesheet" href="slider.css" type="text/css" media="all">
<script src="YAHOO.js" type="text/javascript"></script>
<script src="dom.js" type="text/javascript"></script>
<script src="dragdrop.js" type="text/javascript"></script>
<script src="event.js" type="text/javascript"></script>
<script src="animation.js" type="text/javascript"></script>
<script src="slider.js" type="text/javascript"></script>
<script type="text/javascript"><!--
// スライダー初期化
var slider;
window.onload = function () {
slider = YAHOO.widget.Slider.getHorizSlider("sliderbg", "sliderthumb", 0, 100);
slider.onSlideEnd = function() {
document.getElementById("num").value = slider.getValue();
}
}
// --></script>
</head>
<body>
<h1>yuiスライダーサンプル(スライダー値を取得する)</h1>
<p>ドラッグしてスライダーを動かすと値が表示されます</p>
<form>
<input type="text" size="6" value="10" id="num">
</form>
<div id="sliderbg">
<div id="sliderthumb"><img src="images/button.gif"></div>
</div>
</body>
</html>

[目次へ]

(2006.3.11)