2013-09-25 3 views
0

이 코드와 chk1 및 chk2를 0으로 설정하면이 간단한 코드 기능이 잘못된 점을 짐작할 수 없습니다.클릭 기능 내부의 여러 조건이 작동하지 않습니다.

".click()", ".on ('click')"또는 ".onClick"과 같이 클릭을 사용하는 많은 js 방법이 있지만 그 중 아무 것도 작동하지 않습니다. 다음 예를 살펴보십시오.

  regbtn.click(function() { 
          if(chk1 == 0){ 
           if(chk2 == 1){ 
            box2.reverse(); 
            chk2 = 0; 
           } 
           box1.restart(); 
           chk1 = 1; 
           } 
          }); 

     logbtn.click(function() { 
          if(chk2 == 0){ 
           if(chk1 == 1){ 
            box1.reverse(); 
            chk1 = 0; 
           } 
           box2.restart(); 
           chk2 = 1; 
           } 
          }); 

왜 제대로 작동하지 않는 이유가 있습니까? 그리고 어떤 방식으로 클릭 js 기능의 3 가지 방법을 사용하는 것이 가장 최신이며 가장 좋습니다.

EDIT

regbtn 및 logbtn 각각 BOX1 2 개 가지 다른 박스를 열고 BOX2 2 개 버튼이며, CHK1 및 chk2 다른 상자가 열려 있는지 확인 그렇다면 먼저 역방향이다.

알림은 어느 곳에서나 작동하지 않습니다.

var regbox = document.getElementById("regbox"), 
     logbox = document.getElementById("logbox"), 
     regbtn = document.getElementById("regbtn"), 
     logbtn = document.getElementById("logbtn"); 
    var chk1 = 0, 
     chk2 = 0; 
+0

음,'regbtn'과'logbtn'과'box1'과'box2'는 무엇입니까? – Doorknob

+0

click 메소드 내부에 경고가 표시되고 메소드 내부에 있는지 확인하십시오. –

답변

1

당신은 요소를 DOM에 JQuery와 방법을 적용하려고 :

이 함께 작동하는 초기 코드 변수입니다.

대신 JQuery와 선택기를 사용해보십시오 : 관련 DOM 요소에 연결

var regbox = $("#regbox"), 
     logbox = $("#logbox"), 
     regbtn = $("#regbtn"), 
     logbtn = $("#logbtn"); 

이 반환 JQuery와 객체. JQuery 객체에 대한 포괄적 인 (브라우저 간) 메소드는 매우 강력합니다. DOM 요소를 직접 사용하는 경우에는 이식성이 떨어진다는 표시가됩니다.

+0

굉장하고, Javascript와 Jquery는 나를 위해 무효의 커다란 검은 끝없는 구멍이다. 고마워. –

관련 문제