Задать вопрос
@mrzgt

Как остановить выполнение функции при нажатии на input?

Есть функция которая печатает текст в input, как ее остановть при нажатии на область input?
var delay = 55;
var nextm = 0;
var msg = new Array(
"111",
"222",
"333");
function start_pl_text() {
do(msg[0], 0, 1);
}
function do(text, pos, dir) {
var out = text.substring(0, pos);
document.getElementById("placeholder_text").placeholder =out;
pos += dir;
if(pos > text.length)
setTimeout('do("' + text + '",' + pos + ',' + (-dir) + ')', delay*10);
else {
if(pos < 0) {
if(++nextm >= msg.length) nextm = 0;
text = msg[nextm];
dir = -dir;
}
setTimeout('do("' + text + '",' + pos + ',' + dir + ')', delay);
}
}
start_pl_text();
  • Вопрос задан
  • 129 просмотров
Подписаться 1 Простой 4 комментария
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
var timeoutId;
// ...
timeoutId = setTimeout(...
// ...
timeoutId = setTimeout(...
// ...
function stop() {
  clearTimeout(timeoutId);
}
document.getElementById("placeholder_text").click = stop;


Ну и не называй функцию do, есть ключевое слово do ... while.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы