javascript - 지정된 인덱스에서 ul의 모든 li을 얻는 방법
淡淡烟草味
淡淡烟草味 2017-07-05 10:48:04
0
4
893

지정된 인덱스에서 ul의 모든 li를 가져오는 방법

이렇게 쓰고 싶습니다
var afterUl=document.querySelectorAll('ul')[sy-1];
var afterLi=afterUl.querySelectorAll('li');
하지만 다음 줄은 오류를 보고합니다
leilei. html:128 Uncaught TypeError: 정의되지 않은 'querySelectorAll' 속성을 읽을 수 없습니다. . .
어떻게 써야 하나요? . 초보자 도움말

淡淡烟草味
淡淡烟草味

모든 응답(4)
淡淡烟草味

----- 06-03 14:50 -----

오류를 지적해주신 jasonintju님께 감사드립니다.

여기에 보고된 오류는 querySelectorAll 方法,是由于题主的 下标 越界了,导致取到的 是 undefinedundefined 没有 querySelectorAll 메소드가 없기 때문이 아닙니다.

아래첨자를 정확하게 작성하는데는 문제가 없습니다.

보충 문서
Element.querySelectorAll() - 웹 API

|

----- 06-03 04:30 -----

leilei.html:128 잡히지 않은 TypeError: 정의되지 않은 'querySelectorAll' 속성을 읽을 수 없습니다

오류 메시지는 querySelectorAll 속성이 정의되지 않았기 때문에 읽을 수 없다는 것을 이미 상기시켰습니다

그 이유는 querySelectorAlldocument的方法,而不是 elementelement의 메소드가 아닌 document의 메소드이기 때문입니다.

으아악

해결책은 getElementsByTagName

을 사용하는 것입니다. 으아악

JavaScript 문서에서 이 두 API에 대한 소개를 참조할 수 있습니다

Document.querySelectorAll - 웹 API 인터페이스 MDN
element.getElementsByTagName - 웹 API 인터페이스 |

또는 jQuery를 사용하세요

으아악

过去多啦不再A梦

구현하는 방법에는 여러 가지가 있습니다. 기본 JavaScript 또는 다양한 js 라이브러리를 사용하여 구현할 수 있습니다.
여기에서는 기본 JavaScript를 사용하여 아이디어를 구성하고, ul의 DOM 요소에 id 속성을 추가하고, document.getElementById를 통해 ul을 제거한 다음, getElementsByTagName을 통해 li 요소를 제거합니다.

코드는 다음과 같습니다.

으아악
过去多啦不再A梦

let oLis = document.getElementsByTagName("ul")[index].getElementsByTagName("li");

为情所困

모든 li가 모든 ul보다 훨씬 많기 때문에 후속 인덱스 [sy-1]의 변수 sy가 할당되었기 때문에 오류를 직접 발견했습니다. 위쪽 줄은 정의되지 않고 아래쪽 줄은 오류를 보고합니다.
모두들 감사합니다. . 이 질문은 너무 유치해요. .

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿