学校のコースの一環として、HTML5のCanvas要素の操作方法を学習しています。これは、Javascriptの操作方法も学習していることを意味します。課題は、何かのグラフィックと、この何かのグラフィックとのある種の相互作用を作成することです。
いくつかの簡単な図を作成し、ユーザーが値を入力して図の変化を確認できるようにすることにしました。
http://people.dsv.su.se/~tojo0551/graf/lines.htmlには、私が作成したいくつかの図が含まれていますが、Javascriptを使用して相互作用を作成するというトリッキーな部分があります。これはおそらく簡単ですが、JQuery以外のJavascriptに触れたことはありませんでした。そのため、少し途方に暮れていました。
ユーザーが下部の棒グラフを操作し、1〜5の値を入力して、それに応じて棒を大きくできるようにしたいとします。
Canvasコードは単純で、次のようになります。
function bars(){
var canvas = document.getElementById("bars");
if (canvas.getContext)
{
var ctx = canvas.getContext("2d");
var bar1 = canvas.getContext("2d");
bar1.fillStyle = "rgba(0, 50, 0, .2)";
bar1.fillRect(20, 400, 30, 90);
var bar2 = canvas.getContext("2d");
bar2.fillStyle = "rgba(0, 50, 0, .4)";
bar2.fillRect(55, 360, 30, 130);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(90, 260, 30, 230);
ctx.fillStyle = "rgba(0, 50, 0, .4)";
ctx.fillRect(125, 290, 30, 200);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(160, 270, 30, 220);
ctx.fillStyle = "rgba(0, 50, 0, .4)";
ctx.fillRect(195, 250, 30, 240);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(230, 300, 30, 190);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(20, 400, 30, 90);
ctx.fillStyle = "rgba(0, 50, 0, .4)";
ctx.fillRect(55, 360, 30, 130);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(90, 260, 30, 230);
ctx.fillStyle = "rgba(0, 50, 0, .4)";
ctx.fillRect(125, 290, 30, 200);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(160, 270, 30, 220);
ctx.fillStyle = "rgba(0, 50, 0, .4)";
ctx.fillRect(195, 250, 30, 240);
ctx.fillStyle = "rgba(0, 50, 0, .2)";
ctx.fillRect(230, 300, 30, 190);
しかし、私はここからどこへ行くのですか?私はプログラミングに不慣れで、関数を作成し、選択とループを使用してフローを制御する方法を知っています。私は初心者プログラマーです。ユーザーコントロールを作成するための自然な道は何ですか?間違った方向に作業しないように、作業を開始する前に入力が必要です。方法やあなたが得たアイデアについての良いアドバイスがあるページは大歓迎です。/トーマス