문제

if(i==0){
      $(document).ready(function(){
        $("div#rozet").hover(function(){
          $(this).hide("fast");
          $(this).animate(
                      { top:'+45px', left:'+500px'},
                      {duration: 1}
                      );        
         $(this).show("slow");           
         $(this).stopall();
        });
i=1;
}
if(i==1){
        $("div#rozet").hover(function(){
          $(this).hide("fast");
          $(this).animate(
                      { top:'-85px', left:'+500px'},
                      {duration: 1}
                      );        
         $(this).show("slow");           
         $(this).stopall();
        });
    });
i=0;
}

죄송합니다. 영어가 조금 있습니다. 어쨌든 나는 시작 : d

이 기능을 큐와 함께하고 싶습니다. 그러나 나는 항상 0입니다. 나는 이것을하고 있다는 것을 알고 있습니다. 그래서 무엇을 할 수 있습니까 : d

CSS 변수를 가져갈 수 있습니까? (div#rozet) .Top의 변수, I에 사용할 수 있습니다.

도움이 되었습니까?

해결책

다른 if를 사용해야합니다. 이 두 IFS를 실행하는 함수를 호출하는 경우 i == 0 인 경우 둘 다 실행됩니다. 각 함수에 경고를하여 확인할 수 있습니다. 내가 0 일 때, 첫 번째 if 문장은 참이고, 작업을 수행하고, i를 1로 설정하고, 두 번째보다 두 번째는 지금도 set i에서 1을 설정하기 때문에 사실입니다.

i = 0;
jQuery("#subheader").click(function () {
  if (i == 0) {
    alert ("i was 0");
    i = 1;
  }
  else if (i == 1) {
    alert ("i was 1");
    i = 0;
  }
});

이것이 Firebug를 사용하여 만든 최종 결과입니다. 당신이 가지고 있다면 개똥 벌레 이 페이지의 콘솔에서 이것을 실행할 수 있습니다. 실행되면 답변 수와 정렬 옵션이 포함 된 줄을 클릭 할 수 있습니다. 나는 그것이 대략 당신이 찾고 있던 것이라고 생각합니다.

다른 팁

내가 어디에서 선언하고 설정하고 있습니까?

그러나, 당신은 당신의 if (i == 0)

$ (document).

그것은 문제입니다. $ (document) .ready ()는 이벤트 핸들러이므로 $ (document) .ready ()의 코드가 내가 같은 것에도 불구하고 호출됩니다.

코드를 재 작업해야합니다

$(document).ready(function(){
  if (i == 0) {
    ...
  }
  if (i == 1) {
    ...
  }

}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top