2013-03-12 3 views
0

콘솔에 오류가 나타나지 않고 창에 아무것도 표시되지 않습니다. 그게 뭐가 잘못 되었 니?Javascript 생성 HTML이 작동하지 않습니다.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Home</title> 
    <script type="text/javascript"> 
     function stuffify(){ 
      for(var a=6;a<=0;a--){ 
       document.getElementById("stuff").innerHTML+="<h"+a+">stuff</h"+a+"></br>"; 
      } 
     } 
    </script> 
</head> 
<body> 
    <div id="stuff" onload="stuffify()"></div> 

</body> 
</html> 
+2

'div' 요소는로드 이벤트를 트리거하지 않습니다. 함수는 호출되지 않습니다. –

+0

또한 루프의 조건을 살펴보십시오. 그것은 결코 입력되지 않을 것이고, 그것은 'a> 0'이어야한다. (이것은 6에서 시작하는데, 0보다 크다. 그래서 루프 본문은 결코 돌아 가지 않는다). – bfavaretto

답변

2

onload 기능은 문서의 body 태그를 할 때 작동합니다. 또한

, 루프가 올바르지 당신을위한의 조건이 있어야한다 :

<body>, <frame>, <frameset>, <iframe>, <img>, <input type="image">, <link>, <script>, <style> 

이것은 설명 : for(var a=6; a >= 0; a--)

+1

이미지 및 프레임에도 사용되는 onload .... 적어도 –

+0

@eicto 필자는 당면의 문제에 대해보다 정확한 설명으로 업데이트했습니다. –

+0

@Calvin Koder 추가 한 '버튼'으로 이벤트를 옮길 때도 코드가 작동하지 않는 이유를 알려주기 위해 제 답변을 업데이트했습니다. –

0

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Home</title> 
    <script type="text/javascript"> 
     function stuffify(){ 
      for(var a=6;a<=0;a--){ 
       document.getElementById("stuff").innerHTML+="<h"+a+">stuff</h"+a+"></br>"; 
      } 
     } 

    </script> 
</head> 
<body onload="stuffify();"> 
    <div id="stuff" ></div> 

</body> 
</html> 
0

온로드는 다음 태그에 의해 지원됩니다 시도 귀하의 div가로드 된 후 왜 슬리핑이 트리거되지 않습니다.
그래서, 당신은 대신 사업부의 본체에 온로드 기능을 결합하거나 다음과 같이 DIV 후 스크립트를 삽입 :

<div id="stuff" ></div> 
<script type="text/javascript"> 
stuffify(); 
</script> 
관련 문제