課題【イベント操作】ーNo.09
課題内容
- <概要>
 - 2つのdivタグ(縦/横が200px)を用意しましょう。
 - このdivタグは、
 - 要素の境界がわかるように、
 - 枠線をつけておきましょう。
 - 1つ目のdivタグの背景色は赤色に、
 - 2つ目のdivタグの背景色は青色にしましょう。
 - このdivタグに、
 - マウスカーソルを当てた時には、
 - 「XXにマウスカーソルが当たりました」
 - (XXは「赤色」か「青色」を表示)
 - という文字列を、
 - マウスカーソルをdivタグから外した時、
 - 「XXからマウスカーソルが外れました」
 - (XXは「赤色」か「青色」を表示)
 - という文字列を、
 - アラートとコンソールに、
 - それぞれ表示しましょう。
 
出力結果
表示としては、

このようなdivタグを表示します。
このあとは、
この赤色、青色のそれぞれに、

このように、
マウスカーソルを当てたり、外したりします。
マウスカーソルが当たっているか、
外れたかという点に関しては、
divタグの枠の中に、
(わかりやすく、背景を無くして説明します)

このようにマウスカーソルがあれば、
XXにマウスカーソルが当たりました
(XXは「赤色」か「青色」を表示)をコンソールに表示します。
そして、
上記の状況から、

このように、
枠外にマウスのカーソルが動いた時に、
コンソールに以下の表示を行います。
XXからマウスカーソルが外れました
(XXは「赤色」か「青色」を表示)ポイント(イベント操作)
DOMのイベント操作に関しては、
- 対象のDOM操作の要素を取得する
 - 要素のイベントの処理を設定する
 
を行うことで、
イベントを操作することができます。
このイベント操作の方法に関しては、
以下の記事を参考にしてください。
イベント操作(要素にマウスカーソルが当たった時の操作)
イベント操作に関して、
「要素にマウスカーソルが当たった時の操作」
に関しては、
イベント操作の中でも、
「mouseenter」
を使って操作を行います。
このイベント操作の方法に関しては、
以下の記事を参考にしてください。
【イベント操作】要素にマウスカーソルが当たった時の操作を行う
イベント操作(要素にマウスカーソルが外れた時の操作を行う)
イベント操作に関して、
「要素にマウスカーソルが外れた時の操作を行う」
に関しては、
イベント操作の中でも、
「mouseleave」
を使って操作を行います。
このイベント操作の方法に関しては、
以下の記事を参考にしてください。
答え
HTML
<html>
  <head>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="stylesheet.css">
  </head>
  <body>
    <div class="custom-div red"></div>
    <div class="custom-div blue"></div>
  </body>
  <script type="text/javascript" src="sample.js"></script>
</html>CSS
.custom-div {
  width: 200px;
  height: 200px;
  border: 1px solid #000;
  cursor: pointer;
}
.custom-div.red {
  background-color: red;
}
.custom-div.blue {
  background-color: blue;
}javaScript
// DOMを取得する(赤色)
let sampleRed = document.querySelector('div.red');
// DOMを取得する(青色)
let sampleBlue = document.querySelector('div.blue');
// イベント操作
sampleRed.addEventListener('mouseenter', event => {
  // コンソールに表示
  console.log('赤色にマウスカーソルが当たりました');
});
// イベント操作
sampleRed.addEventListener('mouseleave', event => {
  // コンソールに表示
  console.log('赤色からマウスカーソルが外れました');
});
// イベント操作
sampleBlue.addEventListener('mouseenter', event => {
  // コンソールに表示
  console.log('青色にマウスカーソルが当たりました');
});
// イベント操作
sampleBlue.addEventListener('mouseleave', event => {
  // コンソールに表示
  console.log('青色からマウスカーソルが外れました');
});
