Javascript 如何用不同颜色的html显示进度条

Javascript 如何用不同颜色的html显示进度条,javascript,jquery,html,jquery-ui,progress-bar,Javascript,Jquery,Html,Jquery Ui,Progress Bar,我希望进度条应该有三种不同的颜色,比如说从o到40是蓝色40到80是红色,从80到100是绿色。我已经搜索了很多,但我只得到了简单的移动条。 有没有办法做到这一点 我使用下面的代码,我得到的,但它也不移动 <!doctype html> <html lang="en"> <head> <meta charset="utf-8" /> <title>jQuery UI Progressbar - Default fun

我希望进度条应该有三种不同的颜色,比如说从o到40是蓝色40到80是红色,从80到100是绿色。我已经搜索了很多,但我只得到了简单的移动条。 有没有办法做到这一点

我使用下面的代码,我得到的,但它也不移动

  <!doctype html>
  <html lang="en">
  <head>
  <meta charset="utf-8" />
  <title>jQuery UI Progressbar - Default functionality</title>
  <link rel="stylesheet"  href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css" />
  <script>
   $(function() {
   $( "#progressbar" ).progressbar({
    value: 37
  });
 });

 </script>
 </head>
 <body>
 <div id="progressbar"></div>
 </body>
 </html>    

jQuery UI Progressbar-默认功能
$(函数(){
$(“#progressbar”).progressbar({
价值:37
});
});

我不知道它在Jquery UI中是怎样的,但你可以简单地使用CSS,制作两层,一层是遮罩,另一层是图像,其中40%的宽度是蓝色,10层是40-80红色,80-100绿色,然后你需要揭开它

在JQuery上,您需要隐藏此掩码,它将显示下面的层

我在谷歌上搜索,找到了你们问题的答案


检查它。

尝试将此Css代码应用于您的#progressbar

#progressbar{
width:300px;height:14px;
 background-color:#00aeff;
 filter:progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr=#00aeff, endColorstr=#ff0000);
 background-image:-moz-linear-gradient(left, #00aeff 40%, #ff0000 80%,#2fff00 100%);
background-image:linear-gradient(left, #00aeff 40%, #ff0000 80%,#2fff00 100%);
background-image:-webkit-linear-gradient(left, #00aeff 40%, #ff0000 80%,#2fff00 100%);
background-image:-o-linear-gradient(left, #00aeff 40%, #ff0000 80%,#2fff00 100%);
background-image:-ms-linear-gradient(left, #00aeff 40%, #ff0000 80%,#2fff00 100%);
 background-image:-webkit-gradient(linear, left bottom, right bottom, color-stop(40%,#00aeff), color-stop(80%,#ff0000),color-stop(100%,#2fff00));}

听起来你想把变更事件挂接在一起,检查进度在哪里,然后从中重新设置条。看看它,你会想到两种不同的方法(如果你不想使用chermanarun提到的CSS3梯度,那么:

  • 背景图像:如果您知道进度条的宽度,只需创建一个背景图形,在指定点设置三种颜色。将此背景应用于进度指示器

  • >P>分层条形图:这要求你将前两个条的生长限制在上一个范围内(这样条1不能宽于40%,条2不能宽于80%)。使用CSS定位和Z标引,使所有的E条具有相同的左/顶部位置,并将它们叠置(顶部1条,中间的条2,底部的条3)。。随着加载进度的增加,前两个将在其上限处停止,允许下面的继续运行,从而产生无缝进度的幻觉


    它有不同的颜色,但我想要三种不同的颜色在一个条形图中。你应该尝试使用这个链接:@secretlm在这里使所有的背景都变成绿色。我想要分段,如果它的首字母是红色,然后是红色和绿色,就像这个
    #progressbar.ui progressbar值{background:blue url(path/to/your/image.png)无重复左上;}
    此CSS应应用您的图像,而不是jQuery UI提供的默认灰色渐变。默认情况下,将bg颜色设置为蓝色(将其更改为图像中使用的蓝色的十六进制代码),以便在较慢的连接中加载背景图像。