在窗口完全加载innerHTML之后加载processing.js sketch?

时间:2013-01-25 18:56:37

标签: jquery processing.js

我的processing.js sketch有一个size()调用,它取决于正在加载的窗口,因为它抓取了div的大小。 50%的时间,草图在CSS开始之前加载,因此草图的大小不正确。我认为解决这个问题的最好方法是在window.onload函数中加载它,但canvas似乎不喜欢被innerHTML调用。我怎样才能将带有处理草图的画布泵入div命令?

1 个答案:

答案 0 :(得分:5)

并不是画布不能正常工作,因为它的Processing.js没有为画布添加DOM插入来加载草图;它只对草图加载加载的DOM内容进行一般性传递。由于您希望在此之后注入草图,您可以触发重新分析(通过调用Processing.reload(),这将重置所有内容,因此如果您在同一页面上有其他不应重置的草图,请不要使用)或者你可以打电话

var sourceList = ['file1.pde','file2.pde','...',...];
var canvas = document.querySelector("#mycanvas");
Processing.loadSketchFromSources(canvas, sourceList);

专门针对一个草图,只要将其注入页面是安全的。