2009-11-24 2 views
1

다른 스크립트 서비스를 호출하고 html로 데이터를 렌더링하는 많은 jquery 메소드가 있습니다. 커튼 뒤에서 어떤 일이 일어나고 있다고 결정 론적으로 말하는 "처리 .."표시기를 어떻게 표시합니까?jQuery가 자바 스크립트가 처리 중인지 확인합니다.

필자는 getJSOn 호출 중에 표시기를 숨기거나 숨기는 것에 대해 생각해 보았지만 너무 많은 호출이있는 것처럼 보입니다. 같은 것을 달성하기 위해 따라야 할 더 쉬운 방법이나 최선의 방법이 있습니까?

+2

나는 나를 위해 이것을하는 함수에서 Ajax 처리기를 래핑 할 것이다. – Gumbo

+0

@Gumbo, 요청/응답을위한 기본 대기열은 더 좋게 만들 것입니다 ;-) –

답변

1

나는 동일한 adamantium을 제안 할 것이지만, 또한 각 메소드 호출에 의해 증가되고 콜백 함수에 의해 감소되는 카운터를 도입 할 것이다. 이렇게하면 감소시키고 0이되면 처리 표시기를 다시 숨길 수 있습니다.

이 이런 식으로 뭔가를 볼 수 있었다, 당신은 분명히 함수 이름 등을 변경해야합니다

다음
var openCalls = 0; 

function MethodInvocation() { 
    $(".indicator").show(); 
    openCalls++; 
} 

function Callback() { 
    openCalls--; 

    if(openCalls == 0) { 
     $(".indicator").hide(); 
    } 
} 
1

메서드가 호출 될 때 상태 표시기를 표시하십시오. getJSON의 콜백 함수에서 숨 깁니다.

+0

저는 많은 getJSON 호출을 가지고 있습니다. 좀 더 일반화 된 솔루션이 있습니까? – Ajay

관련 문제