2011-08-02 5 views
0

내 페이지에 여러 개의 서류를 추가하는 경우가 있습니다. 나는 각각에 rect와 path 객체를 그렸다. 나는 각각의 객체에 id를 어떻게 부여 할 수 있는지 알지만, id를 종이 자체에 추가하는 예제는 보지 못했다. 나는 종이 안에서 rect의 클릭 이벤트에 대한 객체를 변경해야한다. 이를 위해 저는 오래된 물체를 깨끗이하고 새로운 물체를 그려야합니다. 문제는 내가 종이에 변수를 재사용한다는 것이다. 따라서 변수에는 내가 원한 것이 아닌 가장 최근의 종이에 대한 참조가 포함됩니다. 이 모든 것 때문에 나는 각자에게 이드를 붙이고 종이를 꺼내서 사용할 수 있을지 궁금해하고있었습니다. 모든 제안을 환영합니다. Kavitaid가있는 라파엘 용지

안녕하세요, 클릭 한 모양에서 종이 개체를 가져올 수 없습니다 !! this.paper, $ (this) .paper 작동하지 않습니다. 도움이 되시면 ...

답변

1

이을 살펴보세요. 당신이 기능에 this을 참조 할 때

$(object.node).mouseover(function() {...}) 

같은 것을 사용하여 이벤트 핸들러를 설정하는 경우, DOM 노드가 아닌 라파엘 객체를 참조. 따라서 Raphael의 속성이나 메서드에 액세스 할 수 없습니다. 이 작업을 수행 할 수 있었던 유일한 방법은 다음과 같은 이벤트 데이터에서 Raphael 객체를 전달하는 것입니다.

$(object2.node).mouseover({rObj: object2}, 
          function (e) { 
           e.data.rObj.paper.clear(); 
          });