2014-06-16 1 views
0

HTML 코드를 작동하지 않습니다 콘솔에서 작동 문제에 대한 문제. 위의 코드는 콘솔에서 작동하지만 colorList의 길이가 내가 console.log()를 사용하여 상기 코드를 디버깅 시도하고 결론에 도달 0JS 코드는 정상적인 웹 코드로

때문에 일반 웹 코드로, 기능도 for 루프로하지 않는 colorList[0] 반환 콘솔의 첫 번째 노드이지만 일반적인 웹 코드에서는 정의되지 않습니다.

다른 쿼리에서 내 질문을 검색하려고했지만 필자가 노련한 프로그래머가 아니기 때문에 필자는이를 이해할 수 없었습니다. 내가 작성한 것으로부터, 그 프로그래머들은 세미콜론을 놓치고 있었다. 윈도우 인 경우에만이 함수를 호출합니다

+1

문서에 실제로이 클래스와 함께'div's가 포함되어 있고 올바르게 닫혀 있고 중첩되어 있고 ''구조 내에 포함되어 있습니까? 내가 볼 수있는 것부터, 자바 스크립트가 좋다 (콘솔에서 작동한다는 것이 입증되었다) – MarioDS

+1

'addListeners' 함수가 실행될 때 DOM이 이미로드되어 있는지 확인 하시겠습니까? 콘솔에서, 이것은 명백한 경우입니다. 그러나 웹 페이지에서는 DOMContentLoaded 이벤트가 시작되기 전에 DOM을 사용할 수 없습니다. – rplantiko

답변

4

시도는 몸 태그

<script> 
//your code 
</script> 
</body> 
</html> 

의 끝에서 당신의 JS 코드를 작성하기 위해 또는 당신은 위해 window.onload 이벤트

function addListeners() { 
    var colorList = document.getElementsByClassName('color-box'); 
    for (var i=0; i<colorList.length; i++){ 
    colorList[i].addEventListener('mousedown', mouseDown, false); 
    window.addEventListener('mouseup', mouseUp, false); 
    } 
} 
window.onload = function(){addListeners()} 

에 기록 할 수 있습니다 제대로로드되었습니다.

관련 문제