我的應用程序的結構與下例類似。我需要界面來動態創建畫布。當我創建這些raphael對象時,我將它們作爲canvasActions的參數。調用給予raphael對象構造函數的函數對象的方法作爲回調函數
如果我使用createCanvas方法創建新的畫布對象,則將對象設置爲canvases-table的類型是Raphael,並且似乎無法使用分配給它的canvasActions。所以問題是我不能在由canvasActions函數返回的接口中使用方法。
爲了調用分配給特定Raphael對象的方法,我必須做些什麼改變?
var myApp = (function() {
var canvasActions = function() {
var actionInterface = function() {
//returns interface object
}();
return actionInterface;
}
var myAppInterface = function {
var canvases = [];
var appInterface = {
createCanvas: function(contextElementId, width, height) {
canvases[canvases.length] = Raphael(contextElementId, width, height, canvasActions);
},
getCanvas: function(index) {
return canvases[index];
}
}
return appInterface;
}();
return myAppInterface;
}());
謝謝你的回答,但是這似乎並沒有解決我的親blem。 –
是的,在放入Raphael物體後,我無法調用canvasActions。 btw。 Raphael文檔(http://raphaeljs.com/reference.html#Paper.path)指出可以有4個參數,第四個是回調。我會用你的回答給出的想法做更多的測試,並希望我能夠解決這個問題。 –
鏈接到拉法爾參考的正確位置:http://raphaeljs.com/reference.html#Raphael –