Может быть, я что-то упускаю ... когда я смотрю / тестирую этот код, он запускается каждый раз, когда срабатывает событие нажатия клавиши, и поскольку вы очищаете поле ввода, мы работаем только с одиночными символами.
Если бы я набрал «say», то код был бы выполнен с «s», тогда
«а», затем «у».
Если вы хотите отсканировать текстовое поле на наличие этих слов, я бы порекомендовал извлечь значение document.interface.output.value
и сравнить это значение с вашим регистром.
Надеюсь, это поможет.
РЕДАКТИРОВАТЬ: Можете ли вы опубликовать свой метод перемещения, метод textOut и метод thinkFail? Из того, что я могу сказать, если какое-то исключение достигнуто, то это когда случай не работает. Я создал jsfiddle , где он отлично работает.