< 返回技术文档列表

js中DOM操作怎么优化

发布时间:2021-11-07 02:02:37

这篇文章主要介绍js中DOM操作怎么优化,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1、当想修改Dom样式时,应该尽可能合并所有的修改,并进行一次处理,以减少重排和重汇的次数。

  // 优化前
  const el = document.getElementById('test');
  el.style.borderLeft = '1px';
  el.style.borderRight = '2px';
  el.style.padding = '5px';
 
  // 优化后,一次性修改样式,这样可以将三次重排减少到一次重排
  const el = document.getElementById('test');
  el.style.cssText += '; border-left: 1px ;border-right: 2px; padding: 5px;'

2、当想批量修改DOM节点时,可以隐藏节点,然后进行一系列的修改操作,设置为可见,这样最多只能重新排列两次。

  // 未优化前
  const ele = document.getElementById('test');
  // 一系列dom修改操作
 
  // 优化方案一,将要修改的节点设置为不显示,之后对它进行修改,修改完成后再显示该节点,从而只需要两次重排
  const ele = document.getElementById('test');
  ele.style.display = 'none';
  // 一系列dom修改操作
  ele.style.display = 'block';
 
  // 优化方案二,首先创建一个文档片段(documentFragment),然后对该片段进行修改,之后将文档片段插入到文档中,只有最后将文档片段插入文档的时候会引起重排,因此只会触发一次重排。。
  const fragment = document.createDocumentFragment();
  const ele = document.getElementById('test');
  // 一系列dom修改操作
  ele.appendChild(fragment);

以上是“js中DOM操作怎么优化”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注血鸟云行业资讯频道!


/template/Home/Zkeys/PC/Static