0

わかりやすく説明しましょう。HTML5を使用して棒グラフを描画する必要があり、それを行いました。問題は、指定された時間に基づいてバーのサイズを大きくする必要があることです。つまり、値として 30 を指定し、時間を 3 として指定すると、10,20 として増加し、3 秒目に 30 に到達する必要があります。ここにバーチャートコードを含めました。

<!doctype html>
<html>
    <head>
        <script type="text/javascript">
            window.onload=function(){
                var canvas=document.getElementById('mycanvas');
                var ctx=canvas.getContext('2d');
                var value=[10,20,30,40,50,90];
                var width=50;
                var currx=30;
                ctx.fillStyle="red";
                for(i = 0; i < value.length; i++)
                {
                    var h=value[i];
                    ctx.fillRect(currx,canvas.height-h,width,h);
                    currx+=width+10;
                }
            };
        </script>
    </head>
    <body>
        <canvas id="mycanvas" height="400" width="400" style="border:1px solid #c3c3c3;">
    </body>
</html> 
4

1 に答える 1

2
<!doctype html>
<html>
    <head>
        <script type="text/javascript">
            window.onload=function(){
                var canvas=document.getElementById('mycanvas');
                var ctx=canvas.getContext('2d');
                var value=[180,140,30,340,50,90];
                var width=50;
                var currx=30;
                ctx.fillStyle="red";
                var i = 0;
                var interval = setInterval(function(){
                    if (i == value.length){
                        clearInterval(interval);
                        return;
                    }
                    var h=value[i];
                    ctx.fillRect(currx,canvas.height-h,width,h);
                    currx+=width+10;
                    i++;
                }, 2000);console.log(interval);
            };
        </script>
    </head>
    <body>
        <canvas id="mycanvas" height="400" width="400" style="border:1px solid #c3c3c3;">
    </body>
</html> 
于 2012-07-19T09:34:28.890 に答える