回答編集履歴
3
`querySelectorAll`, classセレクタを追記
answer
CHANGED
|
@@ -19,12 +19,17 @@
|
|
|
19
19
|
|
|
20
20
|
### Selectors API
|
|
21
21
|
|
|
22
|
-
HTMLを変更しないのであれば、`[att^=val]` で**前方一致**してNodeListを得る方法があります
|
|
22
|
+
HTMLを変更しないのであれば、`[att^=val]` で**前方一致**してNodeListを得る方法があります。
|
|
23
23
|
|
|
24
24
|
- [6.2. 部分照合 属性選択子 - Selectors Level 4 (日本語訳)](https://triple-underscore.github.io/selectors4-ja.html#attribute-substrings)
|
|
25
25
|
|
|
26
|
+
最も、私なら、`class="cback"` を定義して、classセレクタ(`.cback`)で参照する方法を採用します。
|
|
27
|
+
|
|
28
|
+
- [Document.querySelectorAll() - Web API | MDN](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelectorAll)
|
|
29
|
+
|
|
26
30
|
### 更新履歴
|
|
27
31
|
|
|
28
32
|
- 2019/03/30 17:51 「Selectors API」を追記
|
|
33
|
+
- 2019/03/30 17:57 `querySelectorAll`, classセレクタを追記
|
|
29
34
|
|
|
30
35
|
Re: WeilSpinor さん
|
2
Selectors API
answer
CHANGED
|
@@ -17,4 +17,14 @@
|
|
|
17
17
|
- [Array - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array)
|
|
18
18
|
- [Array.prototype.push() - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/push)
|
|
19
19
|
|
|
20
|
+
### Selectors API
|
|
21
|
+
|
|
22
|
+
HTMLを変更しないのであれば、`[att^=val]` で**前方一致**してNodeListを得る方法がありますが、セマンティクス的にはclass属性を定義する方が良さそうな気はします(考え方の違いはあると思います)。
|
|
23
|
+
|
|
24
|
+
- [6.2. 部分照合 属性選択子 - Selectors Level 4 (日本語訳)](https://triple-underscore.github.io/selectors4-ja.html#attribute-substrings)
|
|
25
|
+
|
|
26
|
+
### 更新履歴
|
|
27
|
+
|
|
28
|
+
- 2019/03/30 17:51 「Selectors API」を追記
|
|
29
|
+
|
|
20
30
|
Re: WeilSpinor さん
|
1
必要であれば
answer
CHANGED
|
@@ -5,12 +5,14 @@
|
|
|
5
5
|
そんな事をせずとも、id属性を持つ要素ノードは**グローバル変数に格納される仕様**です(HTML Standard)。
|
|
6
6
|
ただし、JavaScriptで認められる識別子名に準拠していなければ、グローバル変数化されず、同名グローバル変数が定義されれば衝突するので、`getElementById` による参照が推奨されます。
|
|
7
7
|
|
|
8
|
+
- [Document.getElementById() - Web API | MDN](https://developer.mozilla.org/ja/docs/Web/API/Document/getElementById)
|
|
9
|
+
|
|
8
10
|
### eval is evil
|
|
9
11
|
|
|
10
12
|
> evalを使うと良い、とあり、以下のようにためしたのですが、
|
|
11
13
|
|
|
12
|
-
`eval()` によるローカル変数定義は**Strict Modeでは使えない
|
|
14
|
+
`eval()` によるローカル変数定義は**Strict Modeでは使えない**という問題があります。
|
|
13
|
-
他、様々な点から eval は推奨されていない為、配列による変数定義に切り替える事をお勧めします。
|
|
15
|
+
他、様々な点から eval は推奨されていない為、(必要であれば)配列による変数定義に切り替える事をお勧めします。
|
|
14
16
|
|
|
15
17
|
- [Array - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array)
|
|
16
18
|
- [Array.prototype.push() - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/push)
|