, 나는이 같은 많은 문이 있습니다작은 자바 스크립트 솔루션 필요 :이 줄은 유효한 코드입니까?
<li class="menu"><a href="#">1st menu</a></li>
그리고 자바 스크립트 파일을, 나는 다음과 같은 코드가 있습니다
1. function onload()
2. {
3. var lists=document.getElementsByTagName("li");
4. for(var i=0;i<lists.length;i++){
5. if(lists[i].className=="menu"){
6. lists[i].a.onclick=genmenu;
7. }
8. }
9. }
function genmenu(){
alert("this is an alert");
return false;
}
문제는, 내가 클릭하면 링크 '첫 번째 메뉴', 그것은 경고를 표시하지 않습니다. 하지만 난 라인 (6) 및 쓰기 변경하는 경우 : 다음
lists[i].onclick=genmenu;
이 링크 작업 및 쇼 경고를.
내 질문에, 왜 라인 6 (목록 [i]를 .a.onclick = genmenu) does'nt 사용할 수 있습니까? 유효한 코드가 아닌가?
빠른 피드백을 주셔서 감사합니다 –
사실, 이미 jQuery의 선택 항목과 비슷한 것이 있습니다. 'document.querySelectorAll ('li.menu a [href] ')'는 목록 내의 모든 링크를 제공합니다 '메뉴'클래스의 항목. 차이점은 (1) jQuery가 IE7 : P에서 작동하고 (2) jQuery가 CSS의 일부 버전에없는 의사 선택기 등을 추가한다는 것입니다. – cHao
querySelectorAll은 DOM 표준의 일부이며 대부분의 최신 브라우저에서 JQuery를로드 할 필요없이 사용할 수 있습니다. https://developer.mozilla.org/en/DOM/document.querySelectorAll을 참조하십시오. – HBP