bootstrap-slider.html

194 lines | 6.871 kB Blame History Raw Download
<!DOCTYPE html>
<!--[if IE 9]><html lang="en-us" class="ie9"><![endif]-->
<!--[if gt IE 9]><!-->
<html lang="en-us">
<!--<![endif]-->
  <head>
    <title>Bootstrap Slider - Red Hat&reg; Common User Experience</title>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="shortcut icon" href="/img/favicon.ico">
    <!-- iPad retina icon -->
    <link rel="apple-touch-icon-precomposed" sizes="152x152" href="/img/apple-touch-icon-precomposed-152.png">
    <!-- iPad retina icon (iOS < 7) -->
    <link rel="apple-touch-icon-precomposed" sizes="144x144" href="/img/apple-touch-icon-precomposed-144.png">
    <!-- iPad non-retina icon -->
    <link rel="apple-touch-icon-precomposed" sizes="76x76" href="/img/apple-touch-icon-precomposed-76.png">
    <!-- iPad non-retina icon (iOS < 7) -->
    <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/apple-touch-icon-precomposed-72.png">
    <!-- iPhone 6 Plus icon -->
    <link rel="apple-touch-icon-precomposed" sizes="120x120" href="/img/apple-touch-icon-precomposed-180.png">
    <!-- iPhone retina icon (iOS < 7) -->
    <link rel="apple-touch-icon-precomposed" sizes="114x114" href="/img/apple-touch-icon-precomposed-114.png">
    <!-- iPhone non-retina icon (iOS < 7) -->
    <link rel="apple-touch-icon-precomposed" sizes="57x57" href="/img/apple-touch-icon-precomposed-57.png">
    <link rel="stylesheet" href="../dist/css/rcue.min.css" >
    <link rel="stylesheet" href="../dist/css/rcue-additions.min.css" >
      <link href="tests.css" rel="stylesheet" media="screen, print">
    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-slider/9.9.0/bootstrap-slider.min.js"></script>
    <script src="../components/patternfly/dist/js/patternfly.min.js"></script>
  </head>

  <body>
    <div class="container">
      <div class="page-header">
        <h1>Bootstrap Slider</h1>
      </div>
      <div class="alert alert-warning">
        <span class="pficon pficon-warning-triangle-o"></span>
        These examples are included for development testing purposes.  For official documentation, see <a href="https://www.patternfly.org" class="alert-link">https://www.patternfly.org</a>, <a href="http://getbootstrap.com" class="alert-link">http://getbootstrap.com</a>, and <a href="http://seiyria.com/bootstrap-slider/">http://seiyria.com/bootstrap-slider/</a>.
      </div>
      <hr>
<input id="slider-one" type="text"
data-provide="slider"
data-slider-min="0"
data-slider-max="100"
data-slider-tooltip="show" />

<br>
<br>

<input id="slider-two" type="text"
data-provide="slider"
data-slider-ticks="[1, 2, 3, 4, 5]"
data-slider-ticks-labels='["1", "2", "3", "4", "5"]'
data-slider-min="1"
data-slider-max="5"
data-slider-step="1"
data-slider-value="3"
data-slider-tooltip="show" />

<h2>Example of a slider in a form</h2>
<form class="form-horizontal" role="form">
  <div class="form-group">
    <label for="size" class="col-sm-2 control-label">Size</label>
    <div class="col-sm-10">
      <input id="slider" type="text"
      data-provide="slider"
      data-slider-ticks="[1, 2, 3, 4, 5]"
      data-slider-ticks-labels='["1", "2", "3", "4", "5"]'
      data-slider-min="1"
      data-slider-max="5"
      data-slider-step="1"
      data-slider-value="3"
      data-slider-tooltip="show" />
    </div>
  </div>
  <div class="form-group">
    <label for="name" class="col-sm-2 control-label">Name</label>
    <div class="col-sm-10">
      <input type="text" class="form-control" id="name">
    </div>
  </div>

  <div class="form-group">
    <label for="size" class="col-sm-2 control-label">Size</label>
    <div class="col-sm-10">
      <div class="slider-pf">
        <b>0</b>
        <input id="size" type="text"
        data-provide="slider"
        data-slider-min="0"
        data-slider-max="100"
        data-slider-tooltip="show" />
        <b>100</b>
        <input type="text" size="3" class="slider-input-pf">
        <span>GB</span>
      </div>
    </div>
  </div>

  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-default">Sign in</button>
    </div>
  </div>
</form>

<br>
<br>

<div class="slider-pf">
  <b>0</b>
  <input id="slider-pf" type="text"
  data-provide="slider"
  data-slider-min="0"
  data-slider-max="100"
  data-slider-tooltip="show" />
  <b>100</b>
  <input type="text" size="3" class="slider-input-pf">
  <span>GB</span>
</div>

<br>
<br>

<div class="slider-pf">
  <b>0</b>
  <input id="with-stops" type="text"
  data-provide="slider"
  data-slider-min="0"
  data-slider-max="100"
  data-slider-tooltip="show" />
  <b>100</b>
  <input type="text" size="3" class="slider-input-pf">
  <span class="dropdown">
    <button class="btn btn-default dropdown-toggle" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
      GB
      <span class="caret"></span>
    </button>
    <ul class="dropdown-menu" aria-labelledby="dropdownMenu1">
      <li><a href="#">GB</a></li>
      <li><a href="#">MB</a></li>
    </ul>
  </span>
</div>
<script>
  $(function () {
    $('.slider-input-pf').tooltip({ trigger: 'manual' })
      .on('keyup', function (e) {
        var $this = $(this);
        var sd = $this.siblings('[data-provide=slider]').slider();
        if ($this.val().trim() !== '' && !$.isNumeric(this.value)) {
          this.value = sd.slider('getValue');
        }
      })
      .on('keypress blur', function (e) {
        if (e.which == 13 || e.type === 'blur') {
          e.preventDefault();
          var $this = $(this);
          var sd = $this.siblings('[data-provide=slider]').slider();
          var max = sd.slider('getAttribute', 'max');
          var min = sd.slider('getAttribute', 'min');
          if (!$.isNumeric(this.value) || (this.value > max || this.value < min)) {
            var warningInfo = $.isNumeric(this.value) ? 'Valid value should be between ' + min
              + ' and ' + max : 'Valid value should be number';
            $this.attr('data-original-title', warningInfo).tooltip('show').addClass('warning');
            this.value = sd.slider('getValue');
            setTimeout(function(){ $this.tooltip('hide'); }, 3000);
          } else {
            if ($this.is('.warning')) {
              $this.tooltip('hide');
            }
            this.value = $this.val().trim();
            sd.slider('setValue', this.value);
          }
        }
      })
      .siblings('[data-provide=slider]').each(function () {
        $(this).siblings('.slider-input-pf').val(this.value);
        $(this).slider().on('slide', function (e) {
          $(e.target).siblings('.slider-input-pf').val(e.value);
        });
      });
  });
</script>


    </div><!-- /container -->
  </body>
</html>