Показать сообщение отдельно
  #6 (permalink)  
Старый 03.01.2020, 22:57
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от Aetae
В хроме трюк не получится, у него баг(ФИЧА!!!111) с отрисовкой при alert.
Так вы определитесь с насекомыми! А в Chrome всё ОК!

Сообщение от Andriy_co2020k29z8d23
можно как-то это обойти??
А зачем обходить, используйте асинхронную функцию!

Сообщение от рони
не бывает элементов списка(массива) с индексом равным length этого списка(массива)
Используйте цикл for-of и таких проблем не будет!

Сообщение от Aetae
так и говорите - баг.
Какой «баг»? Зачем эта борьба?

Andriy_co2020k29z8d23, alert является «блокирующей скрипты» функцией, т. е. если вы хотите увидеть применение стилей, вам следует «немного» подождать!

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
</head>
<body>
	<ul>
		<li>red</li>
		<li>green</li>
		<li>yellow</li>
		<li>coral</li>
		<li>gray</li>
		<li>violet</li>
	</ul>
	<script>
		async function pseudoAsyncAlert(text) {
			await new Promise(resolve => {
				setTimeout(() => {
					alert(text);
					resolve();
				}, 50);
			});
		}
		async function main() {
			for (const item of document.getElementsByTagName("li")) {
				item.style.backgroundColor = item.textContent;
				await pseudoAsyncAlert(item.textContent);
			}
		}
		document.addEventListener("DOMContentLoaded", main);
	</script>
</body>
</html>


Сообщение от Aetae
В реальной жизни такое никогда не потребуется.
А laimas аж вспотел, пока доказывал полезность блокирующих модальных окон в IE...
Ответить с цитированием