2011-11-01 2 views
0

J'ai une application qui doit appeler une fonction processing.js mais aucune des méthodes que j'ai vues pour accéder à l'instance de traitement semblent fonctionner. Voici ma configuration - dans mon HTML, j'ai un lien, qui, lorsque les besoins cliqué pour appeler la fonction de traitement:jquery/processing.js - appel d'une fonction processing.js à partir de javascript/jquery

<div id="wrapper"> 
    <canvas id="donut" datasrc="donut.js" width="400" height="400"></canvas> 
    <div id="creator">Create Donut</div> 
</div> 
$('#creator').click(function(){ 
    //var p = Processing.instances[0]; //DOESN'T WORK 
    //var p = $('#donut')[0]; //DOESN'T WORK 
    var p = Processing.getInstanceById('donut'); 
    p.createDonut(); 
}); 

Et dans le traitement (donut.js):

void createDonut() { 
    console.log('createDonut'); 
} 

Lorsque je tente d'appeler cette fonction, je reçois cette erreur:

Uncaught TypeError: Object function Processing(aElement, aCode) { 
... 
} has no method 'getInstanceById' 

Et aucun des commen méthodes de liaison au travail de traitement.

Répondre

0

il semble que vous avez besoin d'avoir un attribut data-processing-sources sur votre toile pour elle pour le trouver, et il semble que cela doit être un fichier .pde là donc comme data-processing-sources="donut.pde" au lieu de datasrc="donut.js"

je suis pas sûr à 100% sur la chose .pde alors peut-être essayer data-processing-sources="donut.js" d'abord

+0

Ouais - Je pense que le problème était que j'essaie de travailler avec l'ancienne bibliothèque de traitement en utilisant le code de traitement moderne. – mheavers

Questions connexes