看了老师关于EventLoop的讲解,想问下老师有更深层次的进阶文章吗。
看到一些文章说eventloop中,每次宏任务不一定会触发页面渲染,也就是两个间隔的宏任务并不一定会触发页面渲染,可能会被合并成一次渲染。
以及这段代码百思不得其解。。请老师解惑
刷新页面,有时候是蓝色有时候却是红色
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.div {
position: relative;
height: 200px;
width: 200px;
}
</style>
</head>
<body>
<div class="div" id="app"></div>
<script>
const div = document.getElementById('app')
// div.style.background = 'red'
function toBlue() {
console.log('执行 frame')
div.style.background = 'blue'
}
setTimeout(() => {
div.style.background = 'red'
},0)
window.requestAnimationFrame(toBlue)
</script>
</body>
</html>
登录后可查看更多问答,登录/注册