在下面的代码中,每个cicle都会更新html5<progress>标记的值。
我还可以使用Chrome的控制台看到它的值动态变化。
但为什么渲染只在周期结束时更新?

<!doctype html>
<meta charset="utf8"></meta>
<title></title>
<body>
  <script src="http://code.jquery.com/jquery-latest.min.js"></script>

  <button>click</button>
  <progress  min="0" max="10000" value="0"></progress>

  <script>
    $("button").click(function(){
        for(var i=0; i<8000; i++)
            $("progress").val(i)
    })
  </script>

最佳答案

您可以使用animate方法让用户更容易看到栏的进度,如下所示:

$("button").click(function(){
    for(var i=0; i<800; i++)
        $("progress").animate({ value: "+=10" }, 1);
})

你可以在这里看到它的作用:http://jsfiddle.net/qZJN3/

关于jquery - 循环更新html5进度条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15404694/

10-13 01:03