2014-09-11 3 views
-1

목표는 closeModal() 함수가 트리거 된 button 요소를 클릭하고 display css 속성을 'none'으로 변경하는 것입니다. 하지만 onclick에 설정된 함수가 정의되어 있지 않은 오류가 계속 발생합니다. javascript는 파일의 html 위에 있습니다.javascript 오류 'html onlick으로 함수가 정의되지 않았습니다'

코드는 다음과 같습니다.

<div id="modal" style="display:block;"> 
    <button id="begin">Let's get started!</button> 
</div> 

JavaScr : 자바 스크립트

function closeModal() { 
    var modal = document.getElementById('modal'); 
    $(modal).css('display', 'none'); 
    } 

HTML

<div id="modal" style="display:block;"> 
    <button onclick="closeModal();" id="begin">Let's get started!</button> 
</div> 
+0

기능은 글로벌 네임 스페이스에 정의 할 필요를 작성합니다. 그렇지 않으면이 작동합니다. 여기에 데모가 있습니다 : http://jsfiddle.net/sssk29ny/ –

답변

-1

JQuery와

HTML을 사용하지 않고 더 나은 코드를 정리하려고 IPT :

window.onload = function(){ 
    var btn = document.getElementById("begin"); 
    var modal = document.getElementById("modal"); 
    btn.onclick = function() { 
     modal.style.display = "none"; 
    } 
} 

에 상관없이 어디 스크립트
행운

+0

당신의 코드를 시도했지만 모달로부터 응답이없고 콘솔의 출력이 없습니다. 무엇이 그것을 막고 있을지에 대한 생각? – 4grim

+0

jsFiddle에 테스트 코드가 없으면 첫 번째 행과 마지막 행을 쓰지 마십시오 (window.onload = ...) –

+0

은 [fiddle]입니다. (http://jsfiddle.net/jzn0cqwa/) –

관련 문제