-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
elem.matches()의 매개인자부분에서 질문드립니다.
20.03.10 03:52 작성 조회수 93
1
else if(elem.matches('[data-name="bookmark"]')){}
의 부분에서 왜 data-name 부분을 []로 감싸야 적용이 되는지 알고 싶습니다. (없이하니 에러가 발생하는데 왜 []를 감싸지 않으면 js에서 인식하지 못하는 걸까요?)
답변을 작성해보세요.
2
범쌤
지식공유자2020.03.10
안녕하세요 영찬님! kindtiger입니다 :)
matches() 의 mdn 문서를 보시면
var result = element.matches(selectorString);
selectorString을 받아오리고 되어있어요 ㅎㅎ 말그대로 선택자 문자열이기때문에 우리가 css에서 선택자를 잡는 방법과 동일하게 가져오도록 되어있습니다.
css에서 .foo 를 잡았다면 가져오는것도 element.matches(.foo) 가 되고,
css에서 data-name선택자를 잡을경우 는 [data-name="foo"] 로 잡기때문에 똑같이 matches에서도 동일합니다.
https://developer.mozilla.org/en-US/docs/Web/API/Element/matches
1
답변 2