进度条与消息html / javascript

时间:2015-03-25 15:39:09

标签: javascript html progress-bar

我想在其所说的区域中添加个性化消息:"特定消息,"取决于进度的百分比。

实施例: - 高达15%,显示消息:"开始下载.." - 最多30%,显示消息:"检查新更新..."

我的Progressbar.html - http://jsfiddle.net/DgXM6/63/

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI Progressbar - Custom Label</title>
  <link rel="stylesheet"     
      href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css">
  <style>
  .ui-progressbar {
    position: relative;
  }
  .progress-label {
    position: absolute;
    left: 50%;
    top: 4px;
    font-weight: bold;
    text-shadow: 1px 1px 0 #fff;
  }
  .ui-widget-header {
    background: #3CE049
    url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;
  }
  </style>
  <script>
  $(function() {
    var progressbar = $( "#progressbar" ),
      progressLabel = $( ".progress-label" );

    progressbar.progressbar({
      value: false,
      change: function() {
      progressLabel.text( progressbar.progressbar( "value" ) + "%" );
    },
    complete: function() {
      progressLabel.text( "Complete!" );
    }
  });

    function progress() {
      var val = progressbar.progressbar( "value" ) || 0;

      progressbar.progressbar( "value", val + 2 );

      if ( val < 99 ) {
        setTimeout( progress, 800 );
      }
    }

    setTimeout( progress, 2000 );
  });
  </script>
</head>
<body>

<div id="progressbar"><div class="progress-label">Loading...</div></div>
<span>Specific Message</span>
</body>
</html>

我希望你能理解我,谢谢

1 个答案:

答案 0 :(得分:0)

为什么不是一个简单的&#39; if&#39;声明。给你的跨度一个id =&#39; msg&#39;并使用此进度功能:

function progress() {
      var val = progressbar.progressbar( "value" ) || 0;

  progressbar.progressbar( "value", val + 2 );

      if(val > 15){
          document.getElementById('msg').innerHTML = 'Checking for new updates';
      }
      if(val > 30){
          document.getElementById('msg').innerHTML = 'Some other msg';
      }
      if(val > 50){
          document.getElementById('msg').innerHTML = 'As many as you like';
      }
      if ( val < 99 ) {
        setTimeout( progress, 800 );
      }
    }