2014-02-18 3 views
1

인력거에서 범례의 항목을 클릭 할 때 기능을 추가하고 싶습니다. 난 내 자신의 기능을 실행하는 확장 내가 원하는 토글 기능을 추가하는 표준 코드를 사용 :Rickshaw의 Series.Toggle에 이벤트 추가

shelving = new Rickshaw.Graph.Behavior.Series.Toggle({ 
     graph: graph, 
     legend: legend 
} 

수있는 방법이 여기에 내 자신의 함수를 추가 있습니까? 또한 Rickshaw.Graph.Behavior.Series.Toggle.js에서 코드를 검토하고 편집 해 보았지만 범례의 항목을 클릭 할 때 실행할 수있는 항목이 없습니다. (가져온 js 파일이 캐시되어 편집 내용이 적용되지 않을 수도 있습니다.)

답변

0

수정할 소스 코드에 대해 명시 적으로 질문 했으므로 아래에서 강조했습니다. 소스를 수정하면 새 버전으로 업그레이드하는 것이 훨씬 더 어려워지고, 자신의 버전을 확장/생성하는 것이 좋습니다. Rickshaw.Graph.Behavior.Series.Toggle.js 'Rickshaw.Graph.Behavior.Series.Toggle.js'변화에

다음

Rickshaw.Graph.Behavior.Series.Toggle = function(args) { 
    ... 
    this._addBehavior = function() { 
    this.graph.series.forEach(function(s) { 
     s.disable = function() { 
     if (self.graph.series.length <= 1) { 
      throw('only one series left'); 
     } 
     s.disabled = true; 
     alert('disabling ' + s.name); //HERE 
     self.graph.update(); 
     }; 

     s.enable = function() { 
     s.disabled = false; 
     alert('enabling ' + s.name); //HERE 
     self.graph.update(); 
     }; 
    }); 
    }; 
    ... 
};