动画与Canvas图形
requestAnimationFrame
<div id="status" style="background-color: blue; height: 20px; width: 0%;"></div>
<script>
function updateProgress() {
let div = document.getElementById("status");
div.style.width = (parseInt(div.style.width, 10) + 5) + "%";
if (div.style.left != "100%") {
requestAnimationFrame(updateProgress);
}
}
requestAnimationFrame(updateProgress);
</script>cancelAnimationFrame
let requestID = window.requestAnimationFrame(() => {
console.log('Repaint!');
window.cancelAnimationFrame(requestID);
})通过requestAnimationFrame节流
Last updated