每次 appendChild、innerHTML += 都會觸發瀏覽器重排,大量操作導致嚴重卡頓。
const fragment = document.createDocumentFragment();
for (let i = 0; i < 1000; i++) {
const div = document.createElement('div');
div.textContent = `Item ${i}`;
fragment.appendChild(div);
}
document.getElementById('container').appendChild(fragment); // 僅觸發一次重排
innerHTML 替換整個容器內容(注意 XSS)contain: strict 限制重排範圍