2014-01-21 4 views
0
내 DOMContentLoaded 함수 내에서 이벤트 리스너를 추가 할 수 없습니다 내가 왜 궁금

와 DOMContentLoaded, 내 문제는 그가 아무것도 할 나던 다음로드되기 전에 클릭를 발생하고 있다는 것입니다 후 :는하여 addEventListener

HTML

<body> 
This is a test.<br> 
</body> 
,793 :

JS // DOMContentLoaded ...

var btn=document.createElement("BUTTON"); 
var t=document.createTextNode("CLICK ME"); 
btn.appendChild(t); 
document.body.appendChild(btn); 

btn.addEventListener('click',alert('HELLO!'),false); 

나는이의 바이올린을 만든 (210)

나는 내 html로로드 된 후에 만 ​​트리거 할 수 XMLHTTP 요청이 ...

가 어떻게이 문제를 해결할 수 있기 때문에 내 코드에 DOMContentLoaded를 사용할 수 있나요?

답변

2

기능을 이벤트 콜백으로 지정해야하기 때문입니다. alert('HELLO!')alert 함수를 호출하고 해당 콜백 값 (undefined)을 이벤트 콜백으로 전달하십시오.

는이 작업을 수행 할 :

btn.addEventListener('click', function(){ 
    alert('HELLO!'); 
}, false); 
+1

그것에 나를 이길! 이에 대한 예를 보려면 http://jsfiddle.net/hH5Lh/2/를 참조하십시오. –

+2

@JoshHarrison : 나는 닌자입니다^~ ^ –