teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

コメントでのアドバイスに基づき修正

2017/11/08 04:28

投稿

tkturbo
tkturbo

スコア5572

answer CHANGED
@@ -3,11 +3,12 @@
3
3
  ```
4
4
  var arr = document.getElementsByClassName("click");
5
5
  for(var i = 0; i < arr.length; i++){
6
- let val = arr[i];
6
+ var val = arr[i];
7
7
  val.onclick=function(e){
8
- let elm = e.target;
8
+ var elm = e.target;
9
9
  alert(elm.parentNode.getElementsByTagName(elm.nodeName)[0].innerHTML);
10
10
  };
11
11
  };
12
-
13
- ```
12
+ ```
13
+ ※このスクリプト含むscriptタグはbodyタグを閉じる間際ぐらいに書く方が良いです。
14
+ headタグ内に書かない理由は、headタグ読み込み時点でまだ読み込み終わっていないbodyタグ内の要素を参照するスクリプトであるため、スクリプト実行時にエラーとなるからです。