私は現在、コンテンツの再描画をトリガーせずに (したがって 60 fps の予算を逃さずに) Web ページ上の要素を (任意の位置に) 移動する方法を理解しようとしています。
transform: translate(...)
合成は GPU で行われ、コンテンツの再描画は必要ないため、私のアプローチは を使用することでした。それでも、transform プロパティを変更すると、要素が再描画されます。
この場合の例を作成しました:
<!DOCTYPE html>
<html>
<head>
<title></title>
<style>
#moving {
transform: translate(0, 0);
width: 100px;
height: 100px;
background-color: red;
}
</style>
<script src="http://code.jquery.com/jquery-2.0.3.js"></script>
</head>
<body>
<div id="moving"></div>
<script>
setTimeout(function () {
$('#moving').css('transform', 'translate(100px, 100px)');
}, 2000);
</script>
</body>
</html>