2016-11-19 1 views
0

나는 다음과 같은 오류가 점점 오전 : 나는 Stickyfill 소스의 문제가자바 스크립트 - catch되지 않은 형식 오류 : '창'에 'getComputedStyle'을 실행하지 못했습니다이 : 매개 변수 1 유형이 아닌 '요소'

Uncaught TypeError: Failed to execute 'getComputedStyle' on 'Window': parameter 1 is not of type 'Element'

을 (https://github.com/wilddeer/stickyfill)

다른 버전을 사용해 보았는데 동일한 오류가 발생합니다. 내 JavaScript 소스는 다음과 같습니다.

var a = document.getElementById('left'); 
Stickyfill.add(a); 

왜이 오류가 발생합니까? 어떻게 해결할 수 있습니까?

편집 :

<!DOCTYPE html> 
<html> 
    <head> 
     <title></title> 
     <link rel="stylesheet" type="text/css" href="css-home.css"> 
     <script type="text/javascript" src="stickyfill.js"></script> 
     <script type="text/javascript" src="js-home.js"></script> 

    </head> 
    <body> 

     <div id="container"> 
      <div id="banner"> 
       <img src="sigla.jpg"> 
      </div> 
      <div id="container2"> 
       <div id="left"> 
        <nav> 
        <a target="ifr" href="">Home</a> 
        <a target="ifr" href="">Istoric</a> 
        <a target="ifr" href="echipa.html">Echipa</a> 
        <a target="ifr" href="">Galerie</a> 
        </nav> 
       </div> 
       <div id="right"> 

        <iframe name="ifr" src="echipa.html" frameborder="0" ></iframe> 

       </div> 
      </div> 
      <div id="footer"> 
       <p>CS MIOVENI</p> 
      </div> 
     </div> 
    </body> 

</html> 

LATER 편집 : 난 내 자바 스크립트 파일을 창로드을 사용하여 문제를 해결 한 이

+0

언제 JS를 실행합니까? – ste2425

+0

JS는 .html 페이지가로드 될 때 실행됩니다 (나는 그렇게 생각합니다). –

답변

0

당신이 확인할 수 :

이 내 HTML 페이지입니다
var a = document.getElementById('left'); 

은 실제로 요소를 반환하고 Stickyfill.add(a)으로 전달합니다. ? 디버거를 사용하여 스테핑하거나 예를 들어 로깅하십시오.

var a = document.getElementById('left'); 
// Is an element returned? 
console.log(a instanceof Element); 
Stickyfill.add(a); 
+0

오, 요소를 반환하지 않습니다. 나는 왜, tho (id "left"가 존재하는지)를 이해할 수 없다. –

+0

아마 HTML을 올릴 수 있을까? – Bardy

+0

HTML 소스를 추가했습니다. –

관련 문제