【发布时间】:2012-12-05 03:57:05
【问题描述】:
一个相对简单的处理脚本在 2.0 IDE 的 Javascript 模式和浏览器(通过 Processing.JS)中都失败了,原因未知。我很确定同样的问题是停止这两种方法。我已经隔离了一条导致失败的线路,并在以下页面中进行了说明:
- Test1.html 是有效的项目脚本的精简版
-
Test2.html 演示了 Test1 在调用单个额外命令时如何失败(第 93 行),尽管它在 IDE 的 Java 模式下工作正常。违规行仅试图重新打印已经在
void setup(){}中成功打印的信息,因此我很困惑。
所有脚本都可以查看here,但Test2.pde 中的关键行位于void drawLinks()。
知道是什么原因造成的吗?我现在在这上面浪费了这么多时间!只需将Test2.pde script 复制/粘贴到新的 Processing 2.0 IDE 中,即可在 Java 和 Javascript 模式下使用它..
【问题讨论】:
-
请原谅我不熟悉处理,但这不是有效的 JavaScript。你究竟是如何在 Chrome 中运行它的?您在浏览器的控制台中究竟遇到了什么错误?
-
试试 ProcessingJS。我至少觉得 ProcessingJS 在呈现 Processing 时给人一种更好、更嵌入的感觉。
-
请参阅上述问题中的更新部分。我已更改为 ProcessingJS 并提供了示例。
-
就在您遇到问题的地方,您使用了一些新的 for 循环表示法,尝试将其更改为对 ArrayList 进行更传统的迭代。所以代替 (N el:al) 尝试使用迭代器 Iterator
itr = al.iterator(); while (itr.hasNext()) { //dosomething } -
不错的想法 olovholm 但遗憾的是没有运气。请参阅test1.geotheory.co.uk/Test3.html 及其代码 (test1.geotheory.co.uk/Test3.pde)。但是,此方法在 Java 模式下确实有效。