Da fällt schnell auf, dass die Namen nicht eindeutig sind:
name: 'ntext' + i,
i fängt ja bei jedem Aufruf der Funktion wieder bei 0 an. Offenbar verwendet jCanvas den Namen auch für seine interne Buchführung, so dass es zu Problemen kommt. Gib dem Namen einen Zusatz, der ihn eindeutig macht.
ZitatDas gleiche passiert mit den Namen wenn ich im Canvas an einer beliebigen Stelle klicke.
Das überrascht zunächst, aber ich vermute stark, dass jCanvas einen Click-Listener für das ganze Canvas registriert und darin dann prüft, auf welches Element der Klick zutrifft.