回答編集履歴

2

コメントで教えていただいた方法を追記

2017/02/20 09:51

投稿

kura
kura

スコア368

test CHANGED
@@ -8,7 +8,11 @@
8
8
 
9
9
  - `<input>`が持つプロパティ名と被らないように`onclick="~"`を指定する(姑息的)
10
10
 
11
+ (ただし後述するように`document`(場合によっては`<form>`も)が持つプロパティとも被らないにする必要があります。)
12
+
13
+ - [追記] `onclick="window.list()"`のようにグローバルオブジェクトを経由する(コメントで教えて頂きました)
14
+
11
- - `addEventListener`を使ってイベントハンドラを追加する(オススメ)
15
+ - `addEventListener`を使ってイベントハンドラを追加する(一番オススメ)
12
16
 
13
17
 
14
18
 
@@ -18,7 +22,7 @@
18
22
 
19
23
  `<input>`が持つプロパティは山ほどありますから(alt, checked, list, max, min, name, readonly, size, src, type, value, width...などなど)、被らないようにするというのは意外と難しいです。
20
24
 
21
- これは`addEventListener`をおすすめする理由の一つです。
25
+ これは`addEventListener`をおすすめする理由の一つでもあります。
22
26
 
23
27
 
24
28
 
@@ -67,3 +71,5 @@
67
71
 
68
72
 
69
73
  参考:[Qiita HTMLのイベント属性(onclickなど)のスコープについて](http://qiita.com/hakatashi/items/40fbedf61a3dd79f21fc)
74
+
75
+ (参考ページでは`with(document){}`について触れられていませんが、上の例のように`document`のプロパティも確かに拾うので注意です。)

1

誤字

2017/02/20 09:51

投稿

kura
kura

スコア368

test CHANGED
@@ -62,7 +62,7 @@
62
62
 
63
63
  `<input onclick="submit">`と書いたら`<form>`のsubmitメソッドが参照されますし、
64
64
 
65
- `<input onclick="write">`と書いたら`document.write`のsubmitメソッドが参照されます。
65
+ `<input onclick="write">`と書いたら`document.write`が参照されます。
66
66
 
67
67
 
68
68