文書の過去の版を表示しています。
html要素の取得と変更
document.getElementById(“id_name”) とcallbackの使い方を覚えよう
html内の要素を取得する簡単な方法は、javascriptで提供されているdocumentを利用するのが早いでしょう。javascriptでもよく利用しますが、p5jsでも同様にこのやり方で簡単にアクセスできます。draw関数内で直接idを指定して、その値をもらってくることができます。
callbackを使った別のやり方
上記のようなやり方もOKですが、callback関数を利用した方が一般的です。ただプロトタイプにおいてはどっちだっていいです。callbackを使った 記述にも慣れておきましょう。こちらの方がプログラム自体大きくなってくると、理解しやすいプログラムが掛けます。また必要なときだけに必要な 処理ができるようになります。上記のdraw関数ではとにかく毎回更新する。というインタラクティブアプリケーション的な記述でした。
callbackの種類
先のように、キーボード入力があるたびに呼び出される関数を登録するためにinputを利用しました。このinputのことをcallbackの登録関数と呼びます。 Registering callback funcionって感じです。テキスト入力の場合はこれだけで問題ないかなと思いますが、callback登録にはいくつかの種類があります。実際にinput以外の登録関数を利用して、どのように振る舞いが変わるかを先ほどのプログラムを修正して確認してみましょう。
- html要素に登録可能なcallbackの種類
- 詳細は次のリンクを参照してください:https://p5js.org/reference/#/p5.Element
- mouseClicked()
- mouseOver()
- mouseMoved()
- mouseOut()
- dragOver()
- dragLeave()
- mouseWheel()
- doubleClicked()
- mousePressed()
- changed(): 内容に変更が生じた場合
- input(): 入力があった場合
例えば、下記のサンプルでは、テキストに入力された文字列をそのままbackground-colorの割当色にわたすことで、 テキスト入力で直接色指定を行っています。