2017-05-12 4 views
0

.onclick 속성을 변경하려고 시도했지만 작동하지 않아 디버깅을 시도하고 document.onclick 속성에 경고했을 때 자바 스크립트가 null이라는 것을 알았습니다. . 자바 스크립트 명령 :.onclick 속성을 null로 표시하는 자바 스크립트

document.getElementById("switch").onclick = "autoSlides(2)"; 

HTML :

<label class="switch"> 
     <input type="checkbox" id="switch" onclick="autoSlides(1)" /> 
     <div class="slider"></div> 
    </label> 

전체 자바 스크립트 : 당신이 onclick 이벤트에 문자열을 추가되기 때문에

function autoSlides(x) { 
    var timeOut; 
    if (x == 2) { 
     timeOut = null; 
     document.getElementById("switch").onclick = "autoSlides(1)" 
    } 
    if (x == 1) { 
     plusSlides(1); 
     document.getElementById("switch").onclick = "autoSlides(2)"; 
     timeOut = setTimeout(function() { autoSlides(1) }, 4000); 
    } 
} 

답변

0

이다. 대신

document.getElementById("switch").onclick = "autoSlides(2)"; 

사용

:

document.getElementById("switch").onclick = function() {autoSlides(2)}; // calling a function autoSlides() 
+0

릭 언급 한 바와 같이, 그것은 'autoSlides의 결과를 첨부 할 것 (2). 또한 함수를 사용하면 요소에 onClick 이벤트가 여러 개 추가됩니다. – vabii

+0

아, 사실! 업데이트 된 내 대답 ... – errata