और अब, कुछ अलग-अलग के लिए।backbone.js और raphäel.js/बैकबोन देखें <-> राफेल ऑब्जेक्ट
जब मैं "dom" ऑब्जेक्ट एक रैफेल ऑब्जेक्ट होता है तो मैं रीढ़ की हड्डी के दृश्य में ईवेंट कैसे प्रस्तुत कर सकता हूं। क्या यह बिल्कुल काम करता है? इस तरह:
var NodeView = Backbone.View.extend({
events: {
"click": "click"
},
click: function(){
alert('clicked')
},
render: function(){
canvas.rect(this.model.get('xPos'), this.model.get('yPos'), 50, 50).attr({
fill: "#EEEEEE",
stroke: "none",
cursor: "move"
});
return this;
}
});
मैं जब राफेल वस्तु स्थिति बदल मॉडल अपडेट करने की जरूरत है। जब मैं रैफेल ऑब्जेक्ट को गंभीर रूप से ईवेंट संलग्न करता हूं तो मुझे केवल उस तक पहुंच होती है, न कि संपूर्ण दृश्य और इस प्रकार मॉडल के लिए।
अगर मैं el विकल्प को Element.node असाइन करता हूं तो यह काम नहीं करेगा। इस तरह: this.el = canvas.rect() और फिर घटनाओं में ईवेंट असाइन करें: {}। लेकिन यह काम करता है अगर मैं मैन्युअल रूप से रेंडर(): $ (this.el) .click (_। Bind (function() {this.click()}, यह) में ईवेंट को बाध्य करता है); – thgie