2012-01-05 3 views
8

저는 현재 jQuery의 ajax 메소드를 사용하여 JSON 피드의 일부 데이터를 가져 와서 데이터에 따라 일부 막대를 애니메이션으로 처리하고 있습니다.중첩 된 메소드, 모범 사례

내가 해킹 할 때, 나는 내 접근 방식이 올바른지 정말로 모르겠다.

$.ajax({ 

    url: "/echo/json/", 
    type: "POST", 
    data: data, 
    success: function(data){ 


    $("#value1-bar .usage-bar-fill").animate({ 
     width: data.Value1 
     }, 2500, function() { 
     // Animation complete. 
    }); 

    $("#value2-bar .usage-bar-fill").animate({ 
     width: data.Value2 
     }, 2500, function() { 
     // Animation complete. 
    }); 

    }, 
    dataType: "json" 
}); 

그것은 아약스 방법 내부에서 div의 애니메이션을 확인, 아니면이 작업을 수행하는 더 정확한 방법이있다 - 등 현명한, 메모리 현명한 포맷?

아약스 메서드에서 일부 변수를 반환하고 아약스 메서드 외부에서 애니메이션 메서드를 실행하는 것이 더 나은가요?

체크 아웃 여기 jsfiddle 예 : http://jsfiddle.net/timkl/KPvCj/

나는이 꽤 광범위한 질문 알지만, 그래픽 디자이너는 독학 웹 디자이너 올 인 - 무엇을 내가 뭘하는 것이 좋습니다 만약 내가 정말 몰랐어.

답변

2

나는이 질문을 좋아하고 좀 더 자세한 피드백을보고 싶지만 잘 보일 것이라고 말하고 싶습니다. 이미 ajax 메서드 내에서 임베디드 성공 함수를 호출하고 있으므로 추가 임베디드 함수의 메모리/성능에 대한 걱정은 거의 무시할 수 있습니다. 성공 함수 내에서 사용한 동일하거나 유사한 애니메이션을 사용하면 별도의 함수를 만들어 대신 호출 할 수 있습니다. 그러나 이미 알고 있다고 확신합니다.)

좋은 질문!

2

이것은 아주 작은 응용 프로그램 인 것처럼 보이기 때문에 맛이 거의 문제입니다. 응용 프로그램이 커지면 전반적인 디자인과 원칙이 프로세스의 중요한 부분이됩니다.

그러나이 말은 내가이 접근 방식을 좋아하지 않는다는 것입니다. 코드가 불필요하게 반복되는 코드를 생성하는 것은 매우 어렵습니다. 이러한 코드는이 사용 사례에 매우 특정한 일회적 인 상황이 아니라면 대부분 코드 재사용을 가능하게 할 수 있습니다.

개인적으로 필자는 콜백 함수를 다른 곳에서 선언 할 것입니다. 콜백 함수는 이미 작동해야하는 항목 (예 : 선택기)을 알고 있으며 처리 할 방법을 알고있는 객체에 대한 것입니다. 이 방법은 코드가 거의 자체적으로 구조화되어 필요에 따라 매우 관련성이 높은 비트만 유지합니다.

이 특정 경우에는 그래프 개체의 선을 따라 무언가가됩니다.이 개체는 값을 설정하면 자체 디스플레이/뷰를 적절히 업데이트합니다.

내 말투는 의미가 있습니다. 나는 너무 피곤해서 의견이나 전문가의 조언을 듣지 못할 수도 있습니다. 그래서 여기서 멈추게 될 것입니다.

+1

예제를 다시 쓸 수 있습니까? 나는 보통 @timkl과 똑같은 일을하고 있으며 나는 더 나은 승인을 찾고있다. –

+0

@Raubi 아마도. 지금은 너무 피곤 하긴하지만 나중에 조금 있습니다. –