回答編集履歴
2
セレクターまわりの説明を変えました。
answer
CHANGED
@@ -33,13 +33,17 @@
|
|
33
33
|
そこで、jQuery関数($変数)にCSSセレクタのような文字列を第一引数として投げ込んでやると、
|
34
34
|
DOMツリーを片っ端から漁って合致するDOMツリーを返してくれる。
|
35
35
|
|
36
|
-
|
36
|
+
セレクタというのは**DOMツリーの引換券として機能する文字列**であり、
|
37
37
|
jQueryでは見事にCSSセレクタと同等の機能を作って用意してくれてるわけだ。
|
38
|
-
|
39
38
|
あくまで引換券なので、DOMそのものはセレクタとは呼ばない。
|
40
|
-
DOMそのものを指して「あ、セレクタだ」と言っても
|
41
|
-
「何バカな事言ってんのコイツ?」という目で見られるわけだね。
|
42
39
|
|
40
|
+
例えば通販で頼んだ品を当日受け取れず、ゆうパックの不在通知ハガキがポストに入っていたとしよう。
|
41
|
+
この時、不在通知ハガキは通販の品物の引換券だ。
|
42
|
+
これを郵便局に持っていくと通販の品物と交換してくれるが、通販の品物を指指して「不在通知ハガキだ」とは呼ばないのと同じことだね。
|
43
|
+
|
44
|
+
セレクター -> DOMも同様で一方通行の概念なんだ。
|
45
|
+
CSS解析機やjQueryの関数に投げ込んだら対象のDOMは得られるけど、DOMはセレクターではない。
|
46
|
+
|
43
47
|
---
|
44
48
|
|
45
49
|
でにjQuery($)の第一引数にCSSセレクタ的な文字列を渡すから、
|
@@ -64,9 +68,8 @@
|
|
64
68
|
|
65
69
|
JavaScriptにも輸入してくれという声は結構前から出ていた。
|
66
70
|
それに応える形で登場したのが、
|
67
|
-
モダンブラウザや
|
68
|
-
|
71
|
+
モダンブラウザやIE9以降のブラウザで利用可能の[document.querySelector](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelector)や[document.querySelectorAll](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelectorAll)
|
72
|
+
(IE8以下も用意はされていましたが、一部セレクタが動作しなかった)
|
69
73
|
|
70
|
-
|
71
74
|
`document.querySelector("p strong")`などのように書くと、
|
72
75
|
jQueryと同じようにDOMツリーを探索してDOMを返してくれる。
|
1
IE9→IE8に修正
answer
CHANGED
@@ -64,7 +64,9 @@
|
|
64
64
|
|
65
65
|
JavaScriptにも輸入してくれという声は結構前から出ていた。
|
66
66
|
それに応える形で登場したのが、
|
67
|
-
モダンブラウザや
|
67
|
+
モダンブラウザやIE8以降のブラウザで利用可能になった[document.querySelector](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelector)や
|
68
|
+
IE9以降のブラウザで完全対応した[document.querySelectorAll](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelectorAll)
|
68
69
|
|
70
|
+
|
69
71
|
`document.querySelector("p strong")`などのように書くと、
|
70
72
|
jQueryと同じようにDOMツリーを探索してDOMを返してくれる。
|