разбить предложение на символы
есть предложение любое которое вставляется в текстовое поле на сайте при нажатии на кнопку предложение должно разбиваться на символы и показываться по центру экрана каждый символ с интервалом 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, время: 07:19. |