我正在使用一些 javascript 来允许用户使用以下方法动态加载单击到画布元素的草图:
Processing.loadSketchFromSources('canvas_id', ['sketch.pde']);
如果我第二次(或第三次...)调用 Processing.loadSketchFromSources(...) ,它会将第二次(或第三次...).pde 文件加载到画布上,这是我所期望的。
我希望用户能够单击另一个链接来加载不同的草图,从而有效地卸载前一个。有没有我可以调用的方法(或我可以使用的技术)来检查 Processing 是否有另一个草图正在运行,如果有,告诉它先卸载它?
我忽略了某种 Processing.unloadSketch() 方法吗?我可以简单地放下画布 DOM 对象并重新创建它,但是 (1) 在我需要针时似乎使用锤子,并且 (2) 它会导致我想避免的屏幕闪烁。
我不是 JS 专家,但我已尽力查看 processing.js 源代码以查看可能存在的其他功能,但我碰壁了。我想也许我可以查看 Processing.Sketches.length 以查看是否已经加载了某些内容,但是只是将其从数组中弹出似乎不起作用(不认为会这样)。
我正在使用 ProcessingJS 1.3.6。