2016-06-15 3 views
0

이 문제에 대한 도움이 필요합니다. 이름이 index.html 인 파일과 javascript.js라는 파일이 있습니다. document.getElementById ("canvas")를 수행 한 다음 캔버스 너비와 같은 것을 변경하려고하면 null 예외가 발생합니다.외부 js 파일에서 html 파일의 요소 가져 오기

라인 4에서

var canvas; 
function getCanvas() { 
    canvas = document.getElementById("canvas"); 
    canvas.width = 500; 
} 

는, 구글 크롬 콘솔에 나에게 다음과 같은 오류가 발생합니다 자바 스크립트 파일을 HTML 파일

<html> 
    <body> 
     <canvas> </canvas> 
     <script src="javascript.js"></script> 
     <script>getCanvas.start();</script> 
    </body> 
</html> 

. 잡히지 않는 TypeError : null의 'width'속성을 설정할 수 없습니다.

도움을 준 사람에게 큰 감사를드립니다.

답변

1

당신은 당신에게 '캔버스'의 id를 가진 요소를 얻을 것이다 캔버스 요소

<canvas id="canvas"> </canvas> 
+0

은 김 감사합니다, 그건 신인 실수였다. – Okkahs

0

document.getElementById("canvas");id를 지정해야합니다. 캔버스 요소에 'canvas'ID가 없습니다.

솔루션는 :

<canvas id="canvas"> </canvas> 
0

당신 캔버스의 ID는 "캔버스"아니다; 캔버스 요소에 대한 ID를 설정하고 코드가 작동합니다

<html> 
    <body> 
     <canvas id="canvas"> </canvas> 
     <script src="javascript.js"></script> 
     <script>getCanvas.start();</script> 
    </body> 
</html> 
0
document.getElementById("canvas"); 

이 그 자체가 ID하여 요소를 되찾아 당신은 세트 ID를 포기하지 않았다.

당신의 HTML에이 시도 : -

<canvas id="canvas"> </canvas> 
0

당신의 HTML을 변경하지 않고, 당신이 등을 사용할 수 있습니다

document.body.getElementsByTagName('canvas'); 
관련 문제