rel =“me”속성 및“12345”를 포함하는 href 속성을 타겟팅하는 querySelectorAll () [duplicate]

Nov 18 2020

다른 곳에서는 찾을 수없는 매우 구체적인 상황이 있습니다.

CONTAINS 속성과 속성 <link>을 포함 하는 요소 를 가리켜 야합니다 .rel="me"href="https://www.example.com/profile/12345"12345

<link rel="me" href="https://www.example.com/profile/12345"/>

나는 시도 document.querySelectorAll()했지만 AND운영자가 작동 하도록 형식을 지정하는 방법을 모르겠습니다 .

if (document.querySelectorAll('[rel="me"], a[href*=123456]')[0])

이를 수행하는 방법에 대한 아이디어가 있습니까?

답변

1 Quentin Nov 18 2020 at 00:38

CSS 선택기에서 "AND"는 결합자를 전혀 사용하지 않습니다.

유형 (또는 범용) 선택기가있는 경우 먼저 이동해야합니다.

<link>요소 를 선택하는 유형 선택기 는이 link아닙니다 a.

link[rel="me"][href*="12345"]

첫 번째 일치를 원하면 querySelector()대신 사용하십시오.querySelectorAll()[0]

const el = document.querySelector('link[rel="me"][href*="12345"]');
console.log(el);
<link rel="me" href="https://www.example.com/profile/12345"/>