遊べるJavaScript入門レベル

このHPでは、ボタンをクリックすると写真が表示する「Javascript」を使う方法を紹介しています。 イベントハンドラー[button onclick=" "] や [function] [.getElementById()] [innerHTML()] などの使い方がわかると、いろいろ応用できるでしょう。

イベントハンドラー onclick の使用例

「ボタンをクリックすると写真が表示されます」というように、「**をすると(この場合はボタンをクリックすると)」、何かの動作(この場合は写真の表示)をする…… というものが「イベントハンドラー」「イベントリスナー」と呼ばれるものです。(イベントリスナーはこちらの別のページで紹介しています)

*********ボタンを押してプログラミムを動作させてみましょう。

このボタンをクリックするとここに写真を表示します。

**********サンプルプログラムはここまで。

ボタンをクリックすると、説明文が新しい説明文に変わり、そして、その下に画像が表示されます。

入れ替えるための説明文や画像はあらかじめ準備しておいて、<script>~</script>の中に書いています。

(注)もう一度動作をさせる場合は、F5を押してブラウザの再読み込みしてください。


イベントハンドラーを使うと、いろいろと遊べます

イベントハンドラーはHTML上に書いてscript部分に渡すという使い方です。 

もう一方のイベントリスナーは同じ動きを <script>~</script> の中に書いて用いますし、もちろん、命令語も少し異なっています。

<script>~</script>のスクリプト部分にまとめて記述するので、イベントリスナーのほうが利用(応用)しやすいのですが、ここでは、動きがわかりやすい「イベントハンドラー」で、「ボタンをクリックすると写真が表示される」という例を取り上げています。


PR

プログラムコードの説明

【HTML部分】
<p><button onclick="myAns();">ボタンをクリックすると写真が出ます</button></p> //①ボタン設置
<div id="myPic">このボタンをクリックするとここに写真を表示します。</div> //②idをつける


【JavaScript部分】
<script>
function myAns() {   //③myPicのidのところに説明と写真を表示するための関数
let mySyasin = document.getElementById('myPic');
mySyasin.innerHTML = 'この本は、Indexのページで紹介したおすすめの本です。<br><img src="img/0385.jpg">';
}
</script>


②③のように、私が作った変数は、前に「my」のついた名前(ここでは myAns myPic mySyasinなど)にしてコードが見やすいようにしています。 

また、画像は「img」というホルダー内に置いていますので、「img/***.jpg」などのようなパスになっています。 自分用に適宜変更してください。

【プログラムの流れ】 まず、①HTML部分でボタンを設置して、②文章を置き換える部分にJavaScriptで参照するための「id=myPic」にしています。

③のfanction部分では、ボタンのイベントの飛び先を「myAns」として、先に書いている説明(myPic部分)を .getElementById で取得して、 innerHTML で文章と写真を書き出すう動作をさせています。

このように、説明を文字で書くとわかりにくくなりますが、「こんなことをJavaScriptを使ってやっている」ということを見ておいてください。

ともかく、この書き方を真似して、変数名などを自分のものに変更して、動かしてみるのが理解への早道だと思います。 

ここで使っている、[button onclick=" "] [function] [.getElementById()] [innerHTML()] などは、このHPのいろいろなところで使っているので、「こうすればいい」というところを見ておいてください。


PR

イベントハンドラはいろいろなものがあります

「ボタンがクリックされた」「ページを読み込んだ」「フォームの内容が変更された」 などが「イベント」ですが、それによってなにかをさせたいときに用いるものが「イベントハンドラー」です。

大きく分けて「マウス操作に関連するもの」「ページの読み込みに関係するもの」「フォームに関連するもの」などがあります。

よく使いそうなものをあげると、マウスをクリックしたとき「onclick」 マウスを文字や写真の上においたとき「onmouseover」 マウスを外したとき「onmouseout」 ページが読み込まれたとき「onload」 別のページに移動したとき[onunload」 エラーが発生したとき「onerror」 フォームの内容が変更されたとき「onchange」 submitボタンがクリックされたとき「onsubmit」 その他があります。 

上のコードでは、「id」で指定した部分の文章を画像に置き換えていますが、その他の方法もたくさんあるので、まず、自分なりに使える方法を「使えるようになる」ようにすると良いでしょう。

ここでは、 <button onclick="myAns()> という使い方ですが、それ以外に、<input type="button" value="CLICK"> と書いて使う場合もこのHPでは使っています。

このHPは、クイズや占いなどの簡単なプログラムを動かせるのが目的なので、イベントハンドラーやイベントリスナーは多用しています。

→こちら .addEventListener('click', my***)という、サイコロを振るときにイベントリスナーを使った記事が、またこちらにも、写真をクリックすると説明が出る例など、いろいろなところで使っています。


記事の目次へ

PR

(来歴)R6.5作成  R6.7月見直し R6.10月確認
PR
AmazonのJavascript本 送料無料

楽天ブックスは品揃え200万点以上!


記事の目次はこちら

電子工作の記事の目次へ