разбить предложение на символы
есть предложение любое которое вставляется в текстовое поле на сайте при нажатии на кнопку предложение должно разбиваться на символы и показываться по центру экрана каждый символ с интервалом 1 секунда. с первого до последнего. как реализовать на js?
|
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> div{ font-size: 70px; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100px; height: 100px; margin: auto; } </style> </head> <body> <input type="text"><button>start</button><div></div> <script> document.querySelector('button').onclick=e=>{ var val = document.querySelector('input').value, i = 0 setTimeout(function run() { document.querySelector('div').textContent = val[i] if(i++ < val.length)setTimeout(run, 1000); }, 1000); } </script> </body> </html> |
j0hnik, есть предложение, значит могут быть пробелы/переносы, а их наверное надо удалить.
|
laimas,
Ключевое слово "наверное" :) |
но все же если нужно БЕЗ ПРОБЕЛОВ 24-ую строку заменить на
var val = document.querySelector('input').value.replace(/\s/g, ''), i = 0 |
Цитата:
|
laimas,
пробел называют пустым символом, можно или нельзя вопрос больше философский |
Не до философии, все-таки видимо так /[\s\r\n\t]/g
|
\s вроде эквивалентен
[ \f\n\r\t\v\u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000] |
Цитата:
|
Часовой пояс GMT +3, время: 03:33. |