<article>
태그와 함께 모든 요소에 '클릭'의 EventListener를 설정하는 자바 스크립트 파일이 있습니다. 나는 이벤트가 발생했을 때 클릭 한 기사의 ID를 얻고 싶다. 웬일인지, 제 코드는 아무것도 생성하지 않습니다!자바 스크립트 클릭하면 여러 요소에 이벤트 리스너 및 대상 ID를
내 자바 스크립트 :
articles = document.getElementsByTagName('article');
articles.addEventListener('click',redirect(e),false);
function redirect(e){
alert(e.target.id);
}
는 왜 작동하지? BTW 내 기사 설정은 윈도우가로드 될 때 호출되는 함수에 있으며, 그 함수는 다른 것들이 작동하기 때문에 확실히 작동한다는 것을 알고 있습니다. 이 루프하고 모든 문서 요소에 리스너를 추가 있도록
편집 그래서 난 내 코드를 고정하고, 지금은 거기에 아무것도 경고 상자를 얻을. 아이디없이 출력에 e.target을 시도 할 때, 나는 모든 요소에 대해 다음과 같은 메시지가 :
[object HTMLHeadingElement]
어떤 제안?
ANOTHER 편집
나의 현재 자바 스크립트 코드 : 페이지가 난 빌어 먹을 일을 클릭하지 않았 음을 고려하지 않고,로드를 완료 할 때 내 경고 상자를 보여주고있다
function doFirst(){
articles = document.getElementsByTagName('article');
for (var i = 0; i < articles.length; i++) {
articles[i].addEventListener('click',redirect(articles[i]),false);
}
}
function redirect(e){
alert(e.id);
}
window.addEventListener('load',doFirst,false);
: O
이것은 ID를 보여 주지만 아이템을 클릭하기도 전에! 어떻게 해결할 수 있을까요? – arielschon12
@ arielschon12 : 나는 당신이 무엇을 말하려고하는지 알지 못했습니까? 당신은 요소를 클릭하지 않고도 경고를 표시한다고 말하고 있습니까? 불가능합니다. –
정확히 무슨 일이 일어나고 있는지. 페이지가로드되는 순간 요소 아이디로 경고 상자가 나타납니다. – arielschon12