This is a problem with Processing.js and some recent changes in Firefox as discussed here.
You have two options: Solution 1 is to hack Processing.js file as discussed by alexbbrown in the aforementioned link (a harsh and nasty solution), essentially finding the actual Processing.js file, editing it with your favourite text editor and change lines 291-292 from:
if (obj.iterator instanceof
Function) return obj.iterator();
to:
if (obj.iterator instanceof Function && obj.hasNext instanceof Function)
return obj.iterator();
Solution 2 is to change your code and live without the lovely for-each syntax (a softer, compromising solution), replacing the lines:
for (String name : names) {
alert(name); // doesn't on Firefox 17+, bug?
}
with the common for syntax:
for (int i = 0; i < names.length; i++) {
alert(names[i]);
}
whatever you do, may the for be with you...