通过jquery ajax加载处理js?

时间:2011-09-08 22:28:11

标签: jquery processing.js

我在通过jquery ajax调用加载处理js脚本时遇到问题。草图在其自己的文件中运行正常,但是当我将其加载到div中时它不起作用。我是否需要以某种方式启动草图?我搜索了处理js文档但找不到它。感谢

丑陋的测试脚本

<a href="#" onclick="$.ajax({url: '/test',  context: document.body,  success: function(text){    $('#container').html(text);  }});">Test</a>

'/ test'包含

的地方
<script type="application/processing" data-processing-target="pjs">
// code here
</script>
<canvas width="760" height="500" id="pjs"></canvas>

1 个答案:

答案 0 :(得分:2)

如果您从文件中获取源,请为要加载的画布创建一个新的Processing实例,而不是:

Processing.loadSketchFromSources($('#pjs'), ['mysketch.pde']);

第二个参数是一个数组,因为草图可以包含多个源文件。

如果是动态代码,只需构建一个新的Processing实例:

new Processing($('#pjs'), "/* full sketch code goes here. */");

您的帖子似乎建议对ajax调用“/ test”生成的内容进行某种程度的控制,所以我只想生成草图代码,没有脚本和canvas标记,并且有ajax回调function在页面上生成canvas元素,然后是一个新的Processing($('#canvasid'),callbackdata)调用,以便Processing.js将草图代码加载到刚刚创建的画布中。