Da der Fehler eigentlich immer weiter oben sitzt, hatte ich da schon nachgeschaut. Nur würde ein Fehler ein paar Zeilen weiter oben auch im Firefox eine Fehlermeldung bringen. Was ja nun nicht passiert.
Im wesentliche geht es wohl um folgende Zeilen:
(1) var nonUsedIdx = new Array();
(19) var newIdx = getNewIdx();
(20) curIdx = nonUsedIdx[newIdx];
(21) deleteElement(newIdx);
function getNewIdx() {
var newIdx = Math.floor(Math.random()*(nonUsedIdx.length-1));
return newIdx;
}
function deleteElement(idx) {
nonUsedIdx = removeElementFromArray(nonUsedIdx,idx);
}
function removeElementFromArray(aArray,elementIdx) {
if (aArray==null || aArray.length == 0 || elementIdx<-1) {return false;}
var clearedArray = new Array();
var vectorDim = aArray[0].length;
var elementType = typeof aArray[0];
var k = 0;
for (var i = 0;i<aArray.length;i++) {
if (i!=elementIdx) {
if (elementType == "object") {
clearedArray[k] = new Array(vectorDim);
for (var j = 0;j<aArray[i].length;j++) clearedArray[k][j] = aArray[i][j];
} else {
clearedArray[k] = aArray[i];
}
k++;
}
}
return clearedArray;
}
So, das wäre wohl das Wichtigste. Vielleicht siehst du oder jemand anders bereist einen Fehler.