현재 클래스에 무언가가 포함되어 있는지 여부에 따라 요소의 ID를 얻는 방법을 찾으려고합니다. 현재 나보다 더 나은 방법이 있는지는 잘 모르겠지만, 주변을 둘러 보았다는 것이 내 필요에 정확히 맞지 않습니다. 내가 현재 가지고있는 코드는 클래스에 "one"문자열이 포함되어 있지만 이에 국한되지 않는 div 요소를 찾고 있습니다. 현재이 문자열을 포함하는 요소는 하나 뿐이지 만 경고는 나에게 [Object NodeList]를 제공합니다 (이를 지나치게 복잡하게 만들 수 있습니다).
$idToMove = document.querySelectorAll('div[class^="one"]');
alert($idToMove);
document.querySelectorAll()
노드 목록 (배열과 같은 종류)을 반환합니다. 단 하나만있을 것이 확실하면 몇 가지 옵션이 있습니다.
1) .querySelector
대신 사용 :
// returns the first node that matches
var elm = document.querySelector('div[class~="one"]');
console.log(elm.id);
2) 반환 된 목록의 첫 번째 요소에 액세스합니다.
// returns all nodes that match
var elms = document.querySelectorAll('div[class~="one"]');
console.log(elms[0].id);
의 반환 값을 null로 확인 .querySelector
하고 .querySelectorAll
.
내가 사용 ~=
하고 ^=
. 모든 동등 연산자의 차이점 에 대해 MDN에서 읽을 수 있습니다 . 그러나이 두 가지 경우 :
[attr ~ = value] 속성 이름이 attr이고 값이 공백으로 구분 된 단어 목록이며 그 중 하나는 정확히 "value"인 요소를 나타냅니다.
[attr ^ = value] 속성 이름이 attr이고 첫 번째 값 앞에 "value"가 붙은 요소를 나타냅니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다