2011-10-05 2 views
8

के साथ सीधे कैनवास पैनिंग मैं एक ऐप करने की कोशिश कर रहा हूं कि जब आप किसी आकृति के बाहर क्लिक करते हैं तो यह आपको सेटव्यूबॉक्स() का उपयोग करके व्यूपोर्ट को पैन करने देता है; मैं इसे बंद करने के कुछ किया है, लेकिन मैं इसके साथ खुश नहीं हूँ, मैं एक आयत का उपयोग कर हूँ:रैपिला.जेएस

canvas = new Raphael(0,0,canvas_size, canvas_size); 
var rectan = paper.rect(0,0,canvas_size,canvas_size); 
using .drag(move,dragger,up); 
and in the function of move 
var bboxx=this.getBBox(false) 
paper.setViewBox(bboxx.x,bboxx.y,canvas_size,canvas_size,true); 
         this.toBack(); 

मैं वापस भेज तो यह दूसरों के साथ नहीं कर सकते गड़बड़ वस्तुओं एनिमेशन (खींचें .. ..) यह काम करता है, लेकिन मैं अभी भी अगर संभव है पता करने के लिए और बेहतर बजाय कैनवास पर क्लिक करें/ स्पर्श आयत

+0

ओपी के उत्तर को देखें, स्वीकार नहीं किया गया: http://stackoverflow.com/questions/4157590/raphael-canvasbackground-onclick-event – unclenorton

उत्तर

2

मैं पैनिंग और ज़ूम करने के लिए tihs पुस्तकालय की सिफारिश की जरूरत है, मेरे लिए महान काम करता है।

https://github.com/andrewseddon/raphael-zpd

तो फिर तुम केवल पैन करने के लिए जब क्लिक एक आकार के बाहर, तुम बस रोकने के लिए या किसी भी आकार पर घटनाओं जब क्लिक रोकने की आवश्यकता चाहते हैं।