Schuifregelaars voor het instellen van formuliervelden I: Horizontaal

Veel applicaties hebben parameters waarmee de invloed van een andere grootheid kan worden aangegeven. Een goed voorbeeld daarvan is de kleuraanduiding in HTML. Elke kleur is een mengsel van Rood, Groen en Blauw (RGB). De "aanwezigheid" van elk van die kleuren is een getal tussen 0 en 255.

Om dergelijke getallen snel en efficiënt in te stellen is een schuifregelaar heel geschikt. Een dergelijk hulpmiddel is in HTML5 standaard beschikbaar, zie het item Over <input type=range>.

Hier onder zie je een paar dergelijke schuifregelaars. Je kunt ze verstellen door de knop met de muis te verplaatsen (dat werkt niet op een aanraakscherm, je hebt echt een muis nodig). De stand van de regelaar verschijnt in het tekstvak er naast. Als je het tekstvak verandert (dat kan wél op een aanraakscherm), verplaatst de knop van de regelaar zich.
De hier getoonde regelaars hebben alle een lengte van 200 pixels. Het bereik (range) is aangepast door de parameters (start en factor) te veranderen. De stand van de regelaar bij het openen van de bladzijde wordt bepaald door de parameter begin.
Met de knop Reset breng je de regelaars terug naar de beginstand.

Range = 0 - 200,factor = 1,start = 0
Range = -50 - +50,factor = 2,start = -50
Range = 1 - 9,factor = 25,start = 1

Het idee voor deze schuifregelaar is ontstaan door een toepassing die ik "ergens" op internet ben tegengekomen. Die toepassing werkte alleen met Internet Explorer. Deze versie heeft die beperking niet...

De code staat onderaan deze pagina. Je kunt hem downloaden om zelf te gebruiken, inclusief de skins.

Gebruik:

De code ziet er als volgt uit:
 
(Zet dit in de <HEAD> -- volgorde is belangrijk).

<link rel="stylesheet" href="sliderule.css">
<script src="sliderule.js"></script>
(Zet dit in de <BODY>, op de plaats waar je het nodig hebt
en omsloten door <form>...</form>-tags).
 
** Regelaar: (maak per regelaar een nieuw volgnummer aan)
De code van de sommige tags is voor de leesbaarheid over twee regels verdeeld.
Het moet in de code van je website op één regel staan!
<form>
<div id="SlideRulePlaceHolder_0" style="position:relative;">
<table border="0" cellspacing="0" cellpadding="0"><tr>
  <td width="200" class="SlideRuleBar">
    <div id="SlideRuleButtonContainer_0" style="position:absolute; width:200px;
      height:18px; z-index:1; left: 0px; top: 0px;">
    <img src="srule_b.gif" id="SlideRuleButton_0" alt="" border="0"
      class="SlideRuleButton"></div></td>
  <td width="10" class="SlideRuleBar"></td><td width="10"></td>
  <td><input type="text" id="SlideRuleField_0" value="0" size="3"
    maxlength="3" class="SlideRuleField"
    onchange="changeSlideRule(0)"></td>
</tr></table></div>
 
<div id="SlideRulePlaceHolder_1" style="position:relative;">
   <!-- table voor regelaar _1 -->
</div>
.
.
enzovoort
** Reset-knop:
De code van deze tag is voor de leesbaarheid over twee regels verdeeld.
Het moet in de code van je website op één regel staan!
<input type="button" name="SlideRuleReset" value="Reset"
onClick="resetSlideRules()">
</form>
** Initialiseer de regelaars
<script>
  initSlideRule(0,0,1,50);
  // aanroep initSlideRule voor regelaar _1
  // enzovoort
</script>

Downloaden:
 
Druk op de knop: Download deze code  File: voorb200.zip, 11 307 bytes.

Opmerking:
 
Een vergelijkbare, verticaal opgebouwde schuifregelaar is beschikbaar in twee versies. Zie daarvoor de items "Schuifregelaars voor het instellen van formuliervelden II: Verticaal" en "Schuifregelaars voor het instellen van formuliervelden III: Verticaal II".
 
Van zowel de verticale als van de horizontale schuifregelaars zijn ook versies ontwikkeld zonder het data-veld. Die zijn te vinden in de rubriek Datum en tijd, Formulieren.

 
terug

html-200; Laatste wijziging: 30 juni 2022