2012-02-16 2 views
-1

나는 jQuery를 배울 때 슬라이드 쇼 플러그인을 작성하여 누구나 사용할 수 있도록 공개 할 예정이다. 나는 좋은 출발을했지만 문제가 생겼다. 탭을 전환 한 다음 페이지가 다시 돌아 오면 타이밍이 엉망입니다. 나는 같은 것을 다루는 this question을 보았다. 그러나 나는 나의 특별한 상황에 대한 답을 어떻게 적용 할 지 모른다.탭이 비활성 상태 일 때 setInterval 문제를 해결하려면 어떻게해야합니까?

  1. 그럼 어떻게 SetInterval 탭 전환 버그를 해결할 수 있습니까? 탭을 전환하여 보았습니다. http://jsfiddle.net/8FkYj/
  2. 코드 향상에 대한 제안 사항이 많습니다. JSFiddle을 http://kthornbloom.com/slydeshow/ 또는 참조 :

현재 & 다운로드에게 슬라이드 쇼를 볼 수 있습니다 http://jsfiddle.net/8FkYj/

+0

코드는? – ShankarSangoli

+0

설명에 있지만 직접 링크는 다음과 같습니다. http://kthornbloom.com/slydeshow/js/slydeshow.js – kthornbloom

+1

프로젝트를 외부 서버에 설치하고 싶지 않습니다. 우리는 질문에 테스트 케이스를 원한다. 이것은 개인용 디버깅 서비스는 아니지만 프로그래밍 Q & A –

답변

5

당신은 바인딩 할 수 있습니다 (! 초보자 JS 코드에 대한 유감을 나는 적어도 잘 일을 언급했습니다) $ (window) .blur에 대한 stop 이벤트와 $ (window) .focus에 대한 start 이벤트로 구성되어 탭이 비활성 상태 일 때 타이머가 중지됩니다. 같은

뭔가 :

var interval_id; 
$(window).focus(function() { 
    if (!interval_id) 
     interval_id = setInterval(slide, 1000); 
}); 

$(window).blur(function() { 
    clearInterval(interval_id); 
    interval_id = 0; 
}); 
+0

좋은 시작처럼 들리 네! 오늘 밤이 옵션을 조사하겠습니다. – kthornbloom

관련 문제